myisam 引擎碎片优化:
执行执行 optimize table 表名
innodb 引擎碎片优化:
alter table 表名 engine=innodb
analyze table 表名
查看表的物理文件大小
从表中删除id 为 1 的数据
mysql> delete from t where id = 1;
Query OK, 8192 rows affected (0.17 sec)
再次查看, 发现物理文件大小不变, 如下:
再次查看物理文大小:
从 19M变回了 14M, id = 1 的记录删除后的碎片空间被回收了。