我在Windows8上运行一个MySQL服务器。MySQL目录需要118 GB的空间,并且有很多1GB的mysql-bin文件,根据文件系统,这些文件已经很多年没有修改过了。
我所有的数据库加起来都不足以保证118 GB内存,因此我怀疑服务器未能删除一些旧的bin文件。
如何才能只删除现有数据库不再使用的mysql-bin文件?
发布于 2014-07-11 19:06:05
首先,您应该检查是否仍然启用了二进制日志记录。
mysql> SHOW BINARY LOGS;
mysql> SHOW MASTER STATUS;这两个命令将提供它看到的二进制日志列表和当前二进制日志;
我不能告诉您如何通过数据库使用来删除日志,但我可以告诉您其他三种方法:
每个二进制日志的命令是
mysql> RESET MASTER;就这样。
删除日志
如果看到118个二进制日志,则可以选择最多删除哪个日志。例如,如果二进制日志具有表单mysql-bin.000118,则可以使用
mysql> PURGE BINARY LOGS TO 'mysql-bin.000100`';假设您想删除所有日志,但从5天前的午夜开始保存所有日志。运行以下命令:
PURGE BINARY LOGS BEFORE DATE(NOW()) + INTERVAL 0 SECOND - INTERVAL 5 DAY;或
PURGE BINARY LOGS BEFORE '2014-07-11 00:00:00';这将让mysqld知道要删除哪些二进制日志。
https://serverfault.com/questions/611416
复制相似问题