如果你的mysql服务器不需要做主从复制的话,建议通过修改my.cnf文件,来设置不生成这些文件,只要删除my.cnf中的下面一行就可以了。
log-bin=mysql-bin
如果你需要复制,最好控制一下这些日志文件保留的天数,可以通过下面的配置设定日志文件保留的天数:
expire_logs_days = 3
表示保留3天的日志,这样老日志会自动被清理掉。
如果没有主从复制,可以通过下面的命令重置数据库日志,清除之前的日志文件:
reset master
但是如果存在复制关系,应当通过 PURGE 的名来清理 bin-log 日志,语法如下:
# mysql -u root -p
> purge master logs to 'mysql-bin.010’; //清除mysql-bin.010日志
> purge master logs before '2016-02-28 13:00:00'; //清除2016-02-28 13:00:00前的日志
> purge master logs before date_sub(now(), interval 3 day); //清除3天前的bin日志
注意,不要轻易手动去删除binlog,会导致binlog.index和真实存在的binlog不匹配,而导致expire_logs_day失效
本文转自 yntmdr 51CTO博客,原文链接:http://blog.51cto.com/yntmdr/2062070,如需转载请自行联系原作者