首先可以设置日志的保留策略。
即通过参数 expire_logs_days = 10 进行设置(保留多少天)。
但手工清理是必需要了解的。
一、手工binlog清理
1.1 当前binlog查看
show binary logs;
1.2 清理
---清理指定日期之前的日志
purge master logs before '2018-10-01 00:00:00'
---清理指定日志以前的日志
purge master logs to 'mysql-bin.000005';
二、relay log清理
以下方法为安全的清理方法,但不总是生效。
若以下方法搞不定的话,只能手工rm删除了。
---检查relay log开关设置
show variable like 'relay_log_purge%'
---开启relay log 清理开关
set global relay_log_purge=1;
----清理relay log
----该命令并不很快生效,有时候需要多执行几次。
----若多次执行后,仍无法清除,则需要手工进行操作系统rm。
flush logs;
----清理完成后,将开关恢复原样
set global relay_log_purge=0;