我有几个表,其中有非常大量的插入和删除。数据在表中保留大约2小时后才会被删除。在任何一点,服务器上的数据都远远少于可用的磁盘空间。
但是,由于行删除操作没有释放磁盘空间,所以表的大小一直在增加。
通过对表大小运行OPTIMIZE,我可以将表大小恢复到合理水平。然而,这会使系统停机的时间比我希望的要长,而且似乎不是一个有效的解决方案。
我需要这样做吗?当磁盘空间即将耗尽时,MySQL会恢复data_free本身的磁盘空间吗?我不想冒险等待这种情况发生,因为我知道一旦磁盘空间耗尽,恢复MySQL服务器是多么困难。
发布于 2011-02-14 16:26:09
不,MySQL不会恢复磁盘空间-如果磁盘空间不足,系统将完全停止,并且您可能会丢失数据。有些表也可能被标记为已崩溃,需要进行修复。(这在我身上发生过一两次……)
https://stackoverflow.com/questions/4987987
复制相似问题