For InnoDB tables, OPTIMIZE TABLE is mapped to ALTER TABLE, which rebuilds the table to update index statistics and free unused space in the clustered index.
所以不会直接来减少ibdata1的文件尺寸。
减少ibdata的方法如下
- 1. 用mysqldump等工具导出数据
- 2. 停止 mysqld
- 3. 删除ibdata*, ib_logfile* 文件
- 4. 重新启动 mysqld(这时mysqld就会自动创建 idbdata*, ib_logfile* 文件)
- 5. 将导出来的数据导回去,体积才会减小。
本文转自 holy2009 51CTO博客,原文链接:http://blog.51cto.com/holy2010/479581