johnson 发表于 2022-8-28 22:30:06

mysql delete 不能释放空间

服务器硬盘已满,mysql 5.5 delete 后数据空间没有释放,执行optimize 失败:Table does not support optimize, doing recreate + analyze instead,这种情况有啥好的解决方案

张旭峰 发表于 2022-8-28 22:43:47

用这个 alter table table.name engine='innodb’试过么, 或者给磁盘扩点空间在alter table table.name engine='innodb’

yejr 发表于 2022-8-28 22:46:36

磁盘满了这种只能靠加强监控以及事先规划了。
如果是datadir满了,做好备份后,清理binlog之类的文件。
如果是tmpdir满了,直接清理吧。

johnson 发表于 2022-8-28 22:50:30

张旭峰 发表于 2022-8-28 22:43
用这个 alter table table.name engine='innodb’试过么, 或者给磁盘扩点空间在alter table table.name en ...

执行过,ERROR 1114 (HY000): The table '#sql-367_189ad57' is full

johnson 发表于 2022-8-28 23:17:14

本帖最后由 johnson 于 2022-8-28 23:18 编辑

yejr 发表于 2022-8-28 22:46
磁盘满了这种只能靠加强监控以及事先规划了。
如果是datadir满了,做好备份后,清理binlog之类的文件。
如 ...
那就按照这个搞了,delete掉想delete的数据,然后备份出来,drop掉后重新建表最后导入,只是文件有40G,拷贝过程太过痛苦

yejr 发表于 2022-8-29 11:32:02

johnson 发表于 2022-8-28 23:17
那就按照这个搞了,delete掉想delete的数据,然后备份出来,drop掉后重新建表最后导入,只是文件有40G,拷 ...

搞个复制从节点,业务切换过去,这样更快
页: [1]
查看完整版本: mysql delete 不能释放空间