管理本地日志(Binlog)
本地日志(Binlog)可用于自行搭建主从架构、订阅数据等。本文介绍如何查看和删除RDS MySQL实例的本地日志(Binlog)。
本地日志与日志备份区别
对比项 | 本地日志(Binlog) | 日志备份 |
概述 | 用于自行搭建主从架构、订阅数据等。 | 开启日志备份功能后,本地日志会实时上传(复制)到备份空间,形成日志备份。基于日志备份,您可以恢复数据到备份保留时间内的任意时间点。更多信息,请参见日志备份。 |
开启/关闭 | 默认开启,无法关闭。 | 支持开启或关闭。 |
费用 | 不涉及费用。 | 开启日志备份不收费,备份有免费额度,仅当数据备份和日志备份的总大小超过免费额度时,收取备份费用。 |
存储空间 | 占用实例存储空间。 | 不占用实例存储空间。 说明 日志备份存放于备份空间,备份空间不对外开放访问。 |
本地日志生成规则
RDS MySQL实例实时生成本地日志(Binlog),当一个Binlog文件的大小超过 512 MB,或者写入超过6小时时,系统会自动切换到下一个序号的Binlog文件并继续写入。
查看本地日志
本地日志(Binlog)不支持在RDS控制台查看,仅支持通过SHOW BINARY LOGS;
命令查看。更多信息,请参见远程获取Binlog日志并解析Binlog日志。
查看本地日志大小
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏选择监控与报警,查看日志空间使用量。
说明主节点和从节点的Binlog大小在正常情况下默认是一致的,但由于一些原因(例如,主从延迟、Binlog dump延迟、DTS迁移任务或从节点仍在读取应用日志等),可能会导致主、从节点的Binlog大小不一致。
删除本地日志
删除本地日志会释放其占用的本地存储空间。
删除本地日志不会减少日志备份的大小,也不影响实例的按时间点恢复功能(按时间点恢复功能基于日志备份)。
自动删除本地日志
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏选择备份恢复。
选择备份策略页签,编辑本地日志保留策略,本地日志被自动删除的规则如下:
触发项
触发条件
默认值
触发操作
保留时长
备份保留时长超过设定的保留时长。
3小时
超过保留时长的本地日志(Binlog)文件,当被备份后(需开启日志备份功能),会被自动清理。
最大存储空间占有率
存储空间占有率超过设定的最大存储空间占有率。
说明存储空间占用率=本地日志(Binlog)文件大小/实例总可用存储空间大小。
30%
自动删除最早的本地日志(Binlog)文件,直至空间占用率低于设定比例。
文件保留个数
本地日志文件数超过设置的文件保留个数。
60
自动删除最早的本地日志(Binlog)文件,直至本地日志文件数低于设定的文件保留个数。
可用存储空间
实例总存储空间占用率超过80%或者剩余空间不足5GB。
-
自动删除最早的本地日志(Binlog)文件,直至总空间占用率低于80%且剩余空间大于5GB。
手动删除本地日志
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏选择备份恢复。
单击一键上传Binlog,并单击确定。
说明本操作会保留最新的两个本地日志(Binlog)文件并删除其余所有本地日志文件,且该操作有一定延迟,需要等待一段时间才能生效。
RDS实例系列为基础系列时,不支持该操作。
如果本地日志仍未被删除,且在日志管理页面查看到如下错误日志,则可能是因为客户端故障或存在数据订阅任务,需要停止相应的任务。
[Warning] file /home/mysql/data3001/mysql/mysql-bin.069435 was not purged because it was being readby thread number 17126285
一键上传Binlog功能会将本地日志(Binlog)文件上传至OSS,保留的天数等于日志备份保留天数。
可以登录实例,执行
show binary logs;
命令查看本地日志列表。登录操作请参见通过DMS登录RDS MySQL。可以在监控与报警页面查看本地日志大小。
相关API
API | 描述 |
删除本地日志。 |