MySQL修改bin-log 日志保存天数以及文件大小限制

修改MySQL的bin-log日志过期时间要在主库上来做。如果mysql只有一个单节点,同样适用

 查看当前过期时间

mysql> show variables like '%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)
# 此方法立即生效

查看日志文件大小

mysql> show variables like 'max_binlog_size';
+-----------------+------------+
| Variable_name   | Value      |
+-----------------+------------+
| max_binlog_size | 1073741824 |
+-----------------+------------+
1 row in set (0.00 sec)

配置文件永久修改

# vim /etc/my.cnf
# 修改配置文件[mysqld]区域添加如下两行保存
expire_logs_days = 7
max_binlog_size = 500M

重启服务查后生效

mysql> show variables like 'max_binlog_size';
+-----------------+-----------+
| Variable_name   | Value     |
+-----------------+-----------+
| max_binlog_size | 524288000 |
+-----------------+-----------+
1 row in set (0.01 sec)

mysql> show variables like '%logs_days%';
+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| expire_logs_days | 7     |
+------------------+-------+
1 row in set (0.00 sec)

解释:

1).expire_logs_days = 7 表示超过7点的bin-log日志文件会自动清理。

2).max_binlog_size = 500M 表示单个日志文件mysql-index.000002的大小超过500M后会自动生成一个新的mysql-index.000003来记录bin-log,以此类推。

你可能感兴趣的:(MySQL)