MySQL的本地日志(Binlog)是一种二进制日志文件,记录MySQL数据库所有修改操作的日志文件,可用于自行搭建主从架构、订阅数据等。
本地日志与日志备份
本地备份和日志备份有所区别,具体区别见下表。
对比项 本地日志 日志备份 使用场景 用于自行搭建主从架构、订阅数据等。 在备份策略中开启Binlog日志备份后,本地日志会实时上传(复制)到备份空间,形成日志备份。日志备份用于恢复数据到备份保留时间内的任意时间点。 开启/关闭 默认开启,无法关闭,支持按策略清理 默认开启,与数据备份保留天数一致,可关闭,关闭后影响恢复至任意时间点功能。 空间占用 占据实例存储空间 占据备份空间 费用说明 如存储空间无法满足业务需求,进行扩容,涉及费用。
开启日志备份不收费,备份有免费额度,当数据备份和日志备份总大小超过免费额度时,收取超过部分的备份空间费用。
备份类型为对象存储,下载日志备份将涉及流量费用。
查看本地日志大小
- 进入关系数据库MySQL版实例管理控制台。
- 选择想要查看本地日志的实例,点击右侧监控。
- 选择“数据库”页签,并查看mysql存储空间使用量(MB)指标中的binlog_size。
说明主节点和从节点的Binlog大小在正常情况下默认是一致的,但由于一些原因(例如,主从延迟、Binlog dump延迟、DTS迁移任务或从节点仍在读取应用日志等),可能会导致主、从节点的Binlog大小不一致。
本地日志清理
本地日志无法手动删除,可通过自定义清理策略进行删除,系统将按照天数或者存储空间占用率进行自动清理。
具体操作可参见:Binlog本地设置
说明
删除本地日志会释放其占用的本地存储空间。
删除本地日志不会减少日志备份的大小,也不影响实例的按时间点恢复功能(按时间点恢复功能基于日志备份)。
常见问题
- Q:关系数据库MySQL版的Binlog本地日志如何开启?
A:关系数据库MySQL版的本地日志(Binlog)默认开启,无法关闭。 - Q:主、从节点的Binlog文件大小为什么会不一致?
A:主、从节点的Binlog大小默认是一致的,但可能存在如下原因导致主、从节点的Binlog大小不一致。- 主节点:主从延迟、Binlog dump延迟或DTS迁移任务仍在进行中等。
- 从节点:从节点仍在读取应用(apply)日志。
- Q:为什么本地日志刚生成就被自动删除?
A:可能是Binlog存储空间占用率已经达到设置值,此时如果Binlog本地设置中的允许Binlog最大存储空间占用率为5%甚至更小,则本地日志可能刚生成就会被清理。建议将允许的存储空间占有率调大或者对实例进行存储空间扩容。