mysql8.0设置binlog保存时间,并清除过期日志释放空间

目录

一. 在线修改,即时生效

查看binlog具体设置

清除日志

 二.修改配置,重启生效


一. 在线修改,即时生效

mysql> show variables like '%expire%';
+--------------------------------+---------+
| Variable_name                  | Value   |
+--------------------------------+---------+
| binlog_expire_logs_auto_purge  | ON      |
| binlog_expire_logs_seconds     | 2592000 |
| disconnect_on_expired_password | ON      |
| expire_logs_days               | 0       |
+--------------------------------+---------+
4 rows in set (0.02 sec)

mysql> set global expire_logs_days=1;
ERROR 3683 (HY000): The option expire_logs_days and binlog_expire_logs_seconds cannot be used together. 
Please use binlog_expire_logs_seconds to set the expire time (expire_logs_days is deprecated)

mysql> set global binlog_expire_logs_seconds=86400;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like '%expire%';
+--------------------------------+-------+
| Variable_name                  | Value |
+--------------------------------+-------+
| binlog_expire_logs_auto_purge  | ON    |
| binlog_expire_logs_seconds     | 86400 |
| disconnect_on_expired_password | ON    |
| expire_logs_days               | 0     |
+--------------------------------+-------+
4 rows in set (0.02 sec)

mysql> flush logs;
Query OK, 0 rows affected (2.77 sec)

mysql> show binary logs;
+---------------+------------+-----------+
| Log_name      | File_size  | Encrypted |
+---------------+------------+-----------+
| binlog.000034 | 1150850956 | No        |
| binlog.000035 | 1073745962 | No        |
| binlog.000036 | 1073765209 | No        |
| binlog.000037 | 1036964608 | No        |
| binlog.000038 | 1105127830 | No        |
| binlog.000039 | 1136391108 | No        |
| binlog.000040 | 1112828317 | No        |
| binlog.000041 | 1109221590 | No        |
| binlog.000042 |  165709537 | No        |
| binlog.000043 |     955575 | No        |
+---------------+------------+-----------+
10 rows in set (0.00 sec)

mysql> \q

查看binlog具体设置

查看binlog设置

mysql> show variables like '%expire%';

注意:mysql8.0以下版本binlog保存时效 以天为单位,参数为expire_logs_days,默认0为永不过期mysql8.0以上版本binlog保存时效 以秒为单位,参数为binlog_expire_logs_seconds,默认的binlog过期时间为2592000秒,也就是30天。

示例设置过期日期为1天(1d=86400s):

mysql> set global binlog_expire_logs_seconds=86400;

清除日志

1.手动刷新清理过期日志

mysql> flush logs;

2.清除某个日志:

mysql> purge binary logs to 'binlog.000011';

3.清除某日前的日志:

mysql> purge binary logs before '2020-12-20';

注意:不要轻易手动去删除binlog,会导致binlog.index和真实存在的binlog不匹配,而导致expire_logs_day失效。 

 二.修改配置,重启生效

在配置文件 my.cnf 中修改参数如下:

[mysqld]
expire_logs_days=1     #日志过期时间为1天,若expire_logs_days=0,则为永不过期哦
max_binlog_size=500M     #日志最多存放500M,超过500M后会被清除

mysql服务重启后配置生效

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AWS S3(Amazon Simple Storage Service)是亚马逊提供的一种高度可扩展的对象存储服务。S3允许用户以云存储方式存储和检索任意数量的数据。以下是关于AWS S3的一些重要特性: 1. 可扩展性:AWS S3提供了高度可扩展的存储解决方案,能够适应任意规模的需求。无论是存储几个G的个人文件还是处理TB级别的数据,S3都能够满足需求。 2. 安全性:AWS S3提供多层次的安全控制来保护数据的完整性和安全性。用户可以通过控制访问权限来限制对存储桶和对象的访问。此外,S3还提供了加密功能,可以对数据进行加密,确保数据在传输和存储过程中的安全。 3. 可靠性:AWS S3采用了多副本存储和自动修复机制,确保数据的可用性和持久性。S3将数据存储在多个设备和多个区域,并且自动处理设备故障,以确保数据不会丢失。 4. 数据访问:通过AWS S3,用户可以轻松地在任何地方访问其存储的数据。S3提供了REST和SOAP接口,可以通过编程方式进行高效、低延迟的数据访问。此外,S3还提供了网页界面,方便用户直接通过浏览器进行数据管理和操作。 5. 成本效益:AWS S3采用按需计费模式,根据用户实际存储的数据量和数据传输的流量进行计费。用户只需支付实际使用的存储空间和传输流量,无需提前购买硬件设备或维护硬件设备,从而节约了成本。 总之,AWS S3是一种可靠、安全、高度可扩展的云存储解决方案。通过提供灵活的数据管理和访问方式,以及强大的安全控制和可靠性,S3帮助用户轻松地存储和管理各种类型的数据,并实现数据的安全性和可用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值