我有一个MyISAM表,该表从其中删除了21.7GB的行,但当然空间仍然没有释放到硬盘驱动器上。我已经阅读过OPTIMIZE TABLE命令,但是不幸的是我的服务器上只有17GB的可用空间,我的理解是文件在被释放之前就已经复制了,如果没有22GB的释放空间就不会发生。
该表将不再使用。这个空间永远不会自然地被回收,因此没有理由将其保留在那里,我想回收它。它所在的数据库的其余部分仍在使用中。有什么方法可以真正释放空间,或者让数据库在仍在使用的另一个表中分配该空间?
(我可能会更改代码以使用此表而不是另一个表,从而使用此可用空间,但我希望不必诉诸于此)
将剩余数据复制到新表中,然后删除旧表。那将回收存储。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句