Linux 技术手札

MySQL binary log rotate

如果开启了 MySQL binary log, 在 MySQL 资料目录里面会有很多这样的档案:

mysql-bin.000001
mysql-bin.000002
mysql-bin.000003
mysql-bin.000004
mysql-bin.000005

MySQL 在默认情况下不会删除旧 binary log, 可以透过设定 my.cnf 进行日志轮替, 开启 my.cnf, 加入这一行在 [mysqld] 区块内:
expire_logs_days = 14

expire_logs_days 是指定 binary log 保留的时间, 上面这行是设定保留 14 天。最后重新启动 MySQL 便完成了。

但如果修改后不能重新启动 MySQL 的话, 可以用 root 进入 mysql 执行以下指令也可以:

mysql > show binary logs;
mysql > show variables like ‘%log%’;
mysql > set global expire_logs_days = 14;

这样就可以立即生效。

Exit mobile version