微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

expire_logs_days 没有生效

2bin-log日志大。自己在网上查找了,设置日志过期时间。

#设置日志过期时间
expire_logs_days=30

但是过了一段时间去检查。并没有生效。

 

于是再找了个方法。测试生效

 

设置expire_logs_days自动过期清理binlog
 

登录数据库服务器。

1、使用命令 : show variables like 'expire_logs_days';

发现my.cfg并没有设置成功,不知道为什么。

 

2、set global expire_logs_days=30;

 

3、设置之后不会立即清除,触发条件是:

binlog大小超过max_binlog_size
手动执行flush logs
重新启动时(MysqL将会new一个文件用于记录binlog)


我们执行flush logs;
 

MysqL> flush logs;

Query OK, 0 rows affected, 64 warnings (0.16 sec)

4、如果binlog非常多,不要轻易设置改参数,有可能导致io争用,这时候可以使用purge命令予以清除:

将bin.000061之前的binlog清掉:

MysqL>purge binary logs to 'bin.000061';

将指定时间之前的binlog清掉:

MysqL>purge binary logs before '2019-08-05 13:09:51';


 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐