mysql数据库binlogs日志删除

工作中服务器的空间问题需要清理mysql binlog日志

一直都在本地电脑word中记录,直到有一天硬盘坏了,写博客的开始

  1. 删除方式

RESET MASTER;   删除所有日志,编号从0开始

Purge master logs to ‘mysql-bin100’; 删除mysql-bin100之前所有日志

Purge master logs before’2016-04-03 19:04:08’ 删除这个日志前2016-04-03 19:04:08所有日志

我自己所使用到的是删除几天前的日志:

show binary logs;查看binlog日志mysql数据库binlogs日志删除

 

Purge master logs before date_sub(now(),interval 3 day);

  1. 定期自动删除

我这里是centos系统先登录mysqlmysql数据库binlogs日志删除

 

通过设定过期时间来删除binlog文件

show variables like 'expire_logs_days';

mysql数据库binlogs日志删除

 

使用set global expire_logs_days = 30;设置定期天数30天自动清理一次,默认是0不会进行binlog清理

最后执行flush logs;

如果binlog非常多,不要轻易设置参数,有可能导致io争用,可以使用purge命令进行清除

purge binary logs to 'bin.0000119';

也可以指定时间进行清除

purge binary logs before '2017-05-01 13:09:51'; 

mysql数据库binlogs日志删除