使用delete删除的时候,mysql并没有把数据文件删除,而是将数据文件的标识位删除,没有整理文件,因此不会彻底释放空间。
可以使用 OPTIMIZE TABLE 是指对表进行优化。
这个命令可以将表中的空间碎片进行合并,并且可以消除由于删除或者更新造成的空间浪费 。
OPTIMIZE TABLE 命令只对 MyISAM 、 BDB 和 InnoDB 表起作用 。
表优化的工作可以每周或者每月定期执行,对提高表的访问效率有一定的好处。
但是需要注意的是,优化表期间会锁定表,所以一定要安排在空闲时段进行。