Our Customers

新闻资讯

mysql delete删除数据后,数据库大小没变解决办法

发布时间 : 2026/10/15
浏览次数 : 0
文章来源 : 合众启航

InnoDB 删除数据后,只是把数据页标记为"可复用",并不会立即把磁盘空间还给操作系统。

具体来说:

  1. DELETE 删除行后,这些行所在的页被标记为可重用(放入空闲列表 / free list)

  2. 表空间文件(.ibd)大小不会缩小

  3. 这些空间会被后续的 INSERT 复用,但如果你不再插入数据,磁盘占用就一直存在

  4. 页内碎片(page fragmentation)也会导致空间无法完全回收

即使 DELETE 删除了全表数据,ibd 文件大小通常也不会变。

OPTIMIZE TABLE

OPTIMIZE TABLE 表名;

image.png


18049412926