半年多,mysql-bin日志增加到几十G,需要清理下,查找了资料,整理方法如下: 来源: 在MySQL数据库中,mysql-bin.000001、mysql- bin.000002等文件是数据库的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志文件中,还包括每个语句执行的时间,也会记录进去的。 作用: 1:数据恢复 2:主从服务器之间同步数据 清理办法: 1.如果是单台服务器 A:可以注释掉 log-bin=mysql-bin。 B:expire_logs_days = 3,保留3天的日志。 C:reset master; 重置数据库日志。 2.如果你的环境是主从服务器,那么就需要做以下操作了。 A:在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志 B:使用SHOW MASTER LOGS获得主服务器上的一系列日志。 C:在所有的从属服务器中判定最早的日志,这个是目标日志,如果所有的从属服务器是更新的,就是清单上的最后一个日志。 D:清理所有的日志,但是不包括目标日志,因为从服务器还要跟它同步。 理日志方法为: PURGE MASTER LOGS TO 'mysql-bin.010';
PURGE MASTER LOGS BEFORE '2008-12-19 21:00:00'; 如果你确定从服务器已经同步过了,跟主服务器一样了,那么可以直接RESET MASTER将这些文件删除。

参考:https://blog.csdn.net/lankecms/article/details/60963914