MySQL清除无用的二进制日志(Binlog)
一、Binlog的清除方法
1、自动清除
binlog_expire_logs_seconds
expire_logs_days已经在 MySQL 8.0 中被标记为废弃(deprecated),并计划在未来版本中被移除
SET GLOBAL expire_logs_days = 0; -- 弃用expire_logs_days参数
SET GLOBAL binlog_expire_logs_seconds = 259200; -- 保留3天
show GLOBAL VARIABLES like 'binlog_expire_logs_seconds';
设置成功后,清除超过时间的日志
flush logs;
2、删除指定binlog之前的文件
purge binary logs to 'mysql-bin.000021';
3、删除指定时间之前的binlog文件
purge binary logs before '2030-02-01 00:00:00'
二、清除binlog注意事项
1、尽量采用自动清除的方式
2、确保要清除的Binlog所有从库都不再使用了
3、MySQL所有服务器的磁盘需要监控