×

使用alter table tabname ENGINE=InnoDB后占用的空间更大

hqy hqy 发表于2022-11-11 11:35:06 浏览495 评论0

抢沙发发表评论

alter table tabname ENGINE=InnoDB之后

85e0036d35e94309bcfe2688e495d698_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTEzNTcyMTM=,size_16,color_FFFFFF,t_70.png

原因:


这个表,本身就已经没有空洞的了,比如说刚刚做过一次重建表操作。

在 DDL 期间,如果刚好有外部的 DML 在执行,这期间可能会引入一些新的空洞。

在重建表的时候,InnoDB 不会把整张表占满,每个页留了 1/16 给后续的更新用。也就是说,其实重建表之后不是“最”紧凑的。

来源:极客时间-林晓斌


整理表碎片化空间方法:

alter table tabname ENGINE=InnoDB;

ANALYZE TABLE tabname;

optimize table tabname;

————————————————



打赏

本文链接:https://www.kinber.cn/post/2908.html 转载需授权!

分享到:


推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

 您阅读本篇文章共花了: 

群贤毕至

访客