0

我有几个表,它们的插入和删除量非常大。数据会在表格中保留大约 2 小时,然后才会被删除。在任何时候,服务器上的数据都远远少于可用磁盘空间。

但是,由于行 DELETE 并没有释放磁盘空间,因此表的大小只会不断增加。

我可以通过对它们运行 OPTIMIZE 将表大小恢复到合理的水平。但是,这会使系统停机的时间比我想要的要长,而且似乎不是一个有效的解决方案。

我需要这样做吗?当data_free即将用完时,MySQL会自行恢复data_free中的磁盘空间吗?我不想冒险等待这种情况发生,因为我知道一旦 MySQL 服务器用完磁盘空间,恢复它是多么困难。

4

1 回答 1

1

不,MySQL 不会恢复磁盘空间——如果磁盘空间用完,系统将完全停止,您可能会丢失数据。一些表也可能被标记为崩溃,需要修复。(这发生在我身上一两次......)

于 2011-02-14T08:26:08.510 回答