我有一个小型数据库,大约50MB。它是一个主数据库,正在复制到远程服务器。我发现relay-bin文件的总大小超过了5GB。是否可以安全地删除它们?
我有一个小型数据库,大约50MB。它是一个主数据库,正在复制到远程服务器。我发现relay-bin文件的总大小超过了5GB。是否可以安全地删除它们?
我认为一个更好的答案是中继日志可以被“删除”,但 MySQL 应该自动管理它们。要实现这一点,一种方法是检查 relay_log_purge 的值。
如果你希望 MySQL 管理中继日志,那么应将其设置为 1:
set global relay_log_purge=1;
你可能需要清空日志:
flush logs;
这不会影响二进制日志。
也许尝试重新同步您的主从。
如果可能的话,通过运行reset slave
来清理从站。
它将清除所有中继二进制日志。
然后使用change master to
重新设置复制...
您的主从之间可能存在太多延迟。
来自MySQL手册:
SQL线程在执行完文件中的所有事件并且不再需要它后,会自动删除每个中继日志文件。没有明确的机制来删除中继日志,因为SQL线程会负责这样做。但是,FLUSH LOGS会旋转中继日志,这会影响SQL线程何时删除它们。
PURGE BINARY LOGS
命令的更多信息,请参见MySQL 5.0手册。