问题:
Mysql数据库由于业务原因,数据量增长迅速,binlog日志会增加较多,占用大部分磁盘空间。
解决方案:
出于节约空间考虑,可进行删除多余binary日志,并设置定期删除操作。
1、查看binlog过期时间
mysql> show variables like ‘expire_logs_days‘; 或者
mysql> select @@global.expire_logs_days;
+------------------+-------+
| Variable_name | Value |
+------------------+-------+
| expire_logs_days | 0 |
+------------------+-------+
1 row in set (0.00 sec)
expire_logs_days=0:表示所有binlog日志永久都不会失效,不会自动删除;
目前需求,只想保留七天日志,其余日志打包、压缩后备份至其他地方:
修改方式:
永久生效(重启后即生效):
修改配置文件my.ini(window系统环境下,若为Linux环境,则修改my.cnf文件)文件:
在[mysqld]标签内增加如下内容
expire_logs_days=7
max_binlog_size=500M
设置之后不会立即清除