我的许多 Innodb 表都需要“碎片整理”。我的理解是“OPTIMIZE”可能不是最好的方法。有些人建议执行“ALTER TABLE”以让 Mysql 重建(并因此进行碎片整理)表。
是否有人对对生产 Innodb 表进行碎片整理的最佳方法有任何建议(基于经验)?
答案1
到碎片整理 innodb 按照这个。既然你说它是一个生产数据库,你可以这样做 -
- 启动主-主同步。
- 将主服务器和从服务器放在不同的机器上,这样它们就在不同的 mysql 实例上运行。
- 一旦主主同步完成,则在其中一台机器上启动碎片整理过程,另一台机器将在此之前处理请求...
- 一个结束后,对另一个也重复同样的操作。
希望这可以帮助..
答案2
我要做的第一件事是运行 mysqldump 以确保我有一个备份: http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html
这也许很明显,但我会迈出第一步