MySQL .ibd
文件已增长到超过3 TB,而我的RedHat框不再支持添加更多磁盘空间。
问题
注意:我每个表使用一个
.ibd
文件,并且有几个巨大的表。 最佳答案
如果仅存储数据,则/var/lib/mysql
的数据装载应为5TB SATA驱动器。如果您的应用程序写得很重,则/var/lib/mysql
的数据装载应该是5TB SAS驱动器RAID10。
如果无法升级磁盘,则需要通过以下三种方式之一对元素周期表进行碎片整理:
ALTER TABLE myinnodbtable ENGINE=InnoDB;
OPTIMIZE TABLE myinnodbtable;
您可以手动执行此碎片整理,如下所示:
CREATE TABLE myinnodbtemptable LIKE myinnodbtable;
INSERT INTO myinnodbtemptable SELECT * FROM myinnodbtable;
ALTER TABLE myinnodbtable RENAME myinnodbtableold;
ALTER TABLE myinnodbtemptable RENAME myinnodbtable;
DROP TABLE myinnodbtableold;
如果InnoDB表具有约束,则选项3不起作用,因为约束将消失。
关于mysql数据库.ibd文件大小,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5489756/