mik*_*mik 5 mysql optimization myisam
我有一个大约15Gb的MyIsam表.我删除了大约一半的行,删除查询大约需要10个小时.现在我害怕开始optimize table,因为我不知道要花多长时间.如果您有这种大桌子的经验,请与我分享.
PS删除过程后,查询"select*from table limit 0,30"需要数年时间.会有optimize table帮助吗?
需要10个多小时吗?
如果我打断"优化表"查询,会发生什么?
优化表将有助于减小大小(索引将被重新计算等)如果您删除了一半的行,您应该优化您的表。在我的公司,我们有大约 2-3 GB 的表。优化不像删除那么简单。
如果您希望查询速度更快,请优化您的表。
从大表中删除许多行的另一个提示:您可以在不使用任何删除命令的情况下执行此操作。
选择不删除的行放入与原表结构相同的空表中:
INSERT INTO t_copy SELECT * FROM t WHERE ... ;
使用 RENAME TABLE 以原子方式将原始表移开,并将副本重命名为原始名称:
RENAME TABLE t TO t_old, t_copy TO t;
删除原始表:
删除表 t_old;