我有几个表,它们的插入和删除量非常大。数据会在表格中保留大约 2 小时,然后才会被删除。在任何时候,服务器上的数据都远远少于可用磁盘空间。
但是,由于行 DELETE 并没有释放磁盘空间,因此表的大小只会不断增加。
我可以通过对它们运行 OPTIMIZE 将表大小恢复到合理的水平。但是,这会使系统停机的时间比我想要的要长,而且似乎不是一个有效的解决方案。
我需要这样做吗?当data_free即将用完时,MySQL会自行恢复data_free中的磁盘空间吗?我不想冒险等待这种情况发生,因为我知道一旦 MySQL 服务器用完磁盘空间,恢复它是多么困难。