欢迎访问机房运维工作室

爱数知识库

AnyBackup-备份开启 MySQL binlog 后设置 binlog 过期时间并自动删除最佳实践

频道:爱数知识库 日期: 浏览:34

AnyBackup-备份开启 MySQL binlog 后设置 binlog 过期时间并自动删除最佳实践

关键字

binlog、过期时间

适用产品

  • AnyBackup 7.0.x

目的

AnyBackup 7.0 备份 MySQL 数据库要求开启 binlog 日志并配置日志模式为 ROW 模式。有一部分环境 MySQL 数据库由于业务原因,数据量增长迅速,binlog 日志会增长很快,占用大部分磁盘空间,需要配置过期时间并自动删除 binlog 日志。

解决方案

为了配置 binlog 日志过期时间并自动删除,请按照以下步骤执行:
1. 登录 MySQL 数据库,执行命令如下:

mysql -uroot -p

2. 执行如下命令查看 binlog 过期时间,expire_logs_days 值为 0 表示所有 binlog 日志永久都不会失效,不会自动删除。

show variables like 'expire_logs_days'

3. 修改数据库 expire_logs_days 参数,配置 binlog 日志过期时间,Linux 系统环境下编辑 my.cnf 文件,Windows 环境下编辑 MySQL 配置文件 my.ini。在配置文件的 [mysqld] 下添加如下两行, 添加完成后保存退出。

max_binlog_size=1024m
expire_logs_days=7

注意: expire_logs_days 参数设置过期天数,max_binlog_size 参数设置日志文件的最大值,可根据需求配置。

4. 重启 MySQL 数据库服务,使得配置生效。

注意:设置之后不会立即清除,触发条件是 binlog 大小超过 max_binlog_size 参数所设置的值。

更多信息

关于 MySQL binlog 设置过期时间的更多信息,请参考官方文档介绍:expire_logs_days