mysql中怎样设置expire_logs_days自动过期清理binlog
发布时间:2022-01-11 14:06:32 所属栏目:MySql教程 来源:互联网
导读:小编给大家分享一下mysql中如何设置expire_logs_days自动过期清理binlog,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 生产上有一个比较小的系统,发现mysql占用空间较大,经排查发现是binlog比较多引起的 查看binlog过期时间,设置的
小编给大家分享一下mysql中如何设置expire_logs_days自动过期清理binlog,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 生产上有一个比较小的系统,发现mysql占用空间较大,经排查发现是binlog比较多引起的 查看binlog过期时间,设置的时间为90天,这个值默认是0天,也就是说不自动清理,可以根据生产情况修改,本例修改为7天 mysql> show variables like 'expire_logs_days'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | expire_logs_days | 90 | +------------------+-------+ 1 row in set (0.00 sec) mysql> set global expire_logs_days=7; Query OK, 0 rows affected (0.00 sec) 设置之后不会立即清除,触发条件是: binlog大小超过max_binlog_size 手动执行flush logs 重新启动时(MySQL将会new一个新文件用于记录binlog) 我们执行flush logs; mysql> flush logs; Query OK, 0 rows affected, 64 warnings (0.16 sec 如果binlog非常多,不要轻易设置改参数,有可能导致io争用,这时候可以使用purge命令予以清除: 将bin.000055之前的binlog清掉: mysql>purge binary logs to 'bin.000055'; 将指定时间之前的binlog清掉: mysql>purge binary logs before '2017-05-01 13:09:51'; 看完了这篇文章,相信你对“mysql中如何设置expire_logs_days自动过期清理binlog”有了一定的了解 (编辑:92站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |