共计 558 个字符,预计需要花费 2 分钟才能阅读完成。
自动清理
动态设置
在终端中执行查询,查到当前二进制日志超时。
默认为0,表示永不超时
mysql> show variables like '%expire_logs_days%';
+------------------+-------+
| Variable_name | Value |
+------------------+-------+
| expire_logs_days | 0 |
+------------------+-------+
1 row in set (0.00 sec)
通过以下命令设置保留14天
set global expire_logs_days = 14;
当mysql切换日志时自动触发。
可以通过命令 flush logs; 手动触发。(不建议手动触发)
配置文件
运行时设置在重启后无效,为保证重启后有效,需要设置配置文件。
/etc/my.cnf
[mysqld]
expire_logs_days=14
手动清理
可以通过以下命令手动清理,截止日期 或 文件名。
-- 截止到 2016-07-01 00:00:00
PURGE MASTER LOGS BEFORE '2016-07-01 00:00:00';
-- 截止到文件 mysql-bin.001000
PURGE MASTER LOGS TO 'mysql-bin.001000';
正文完