我的mysql集群数据节点数据使用率提高到95%。然后我尝试删除 500000 行,我的节点数据使用量最初开始增加并达到 99% 及以上,并遇到 TABLE FULL 错误。请谁能告诉我为什么删除行时现有节点的数据使用量会增加?删除行时mysql集群的内部工作是什么?
我在 config.ini 中的 MaxNoOfConcurrentOperations 参数 600000 不是由于这个参数。
删除行并不一定会释放磁盘空间。事实上,它可能会消耗更多,因为它保留了MVCC日志和相关的复制数据。
相比之下,TRUNCATE
将放弃数据批发并且似乎不会招致相同的惩罚,至少对于大多数引擎而言。
如果您的磁盘空间确实不足,您可能需要完全删除一些表以释放一些空间。