首页 > 代码库 > MySQL innodb table management

MySQL innodb table management

Engine Innodb storage optimize

MySQL的表增长到稳定时期或者连续增长10或100Mb时,可以通过使用optimize table语句来重构MySQL表,增加MySQL表的可用性,减少表在表空间中的存储碎片。

MySQL optimize table会重建table和Index,减少表内的空间碎片。

如果是varchar类型的字段,进行大量的updatge,造成字段长度改变很多,也可以使用optimize table重构表,增加MySQL中表的可读性。

一般表容量低于1024M,不需要optimize table重构。


optimize table会锁表,需要在维护时间或数据库访问峰谷执行此操作。


mysql> optimize table test2;

+--------------+----------+----------+-------------------------------------------------------------------+

| Table        | Op       | Msg_type | Msg_text                                                          |

+--------------+----------+----------+-------------------------------------------------------------------+

| dfxbdb.test2 | optimize | note     | Table does not support optimize, doing recreate + analyze instead |

| dfxbdb.test2 | optimize | status   | OK                                                                |

+--------------+----------+----------+-------------------------------------------------------------------+

2 rows in set (0.08 sec)


本文出自 “DBA的天空” 博客,请务必保留此出处http://kevinora.blog.51cto.com/9406404/1877354

MySQL innodb table management