您可以设置RDS MySQL实例的Binlog自动上传规则,或者手动发起BInlog上传,及时将Binlog上传到RDS用来保存备份文件的OSS上,避免占用过多存储空间。
背景信息
在清理本地日志前,请先了解MySQL Binlog生成和清理规则。
说明 Binlog上传到RDS用来保存备份文件的OSS上,该OSS的存储费用不能使用OSS资源包进行抵扣。
- MySQL实例默认生成Binlog规则
- 通常情况下,当Binlog大小超过500 MB时会切换到下一序号文件继续写入,即写满500 MB就会生成新的Binlog日志文件继续写入。
- 有些情况下,Binlog日志不满500 MB就不再写入,例如由于命令的执行、系统重启等原因。
- 有些情况下,会出现Binlog文件尺寸超过500 MB的情况,例如当时在执行大事务,不断写入Binlog导致当前Binlog文件尺寸超过500 MB。
- MySQL实例默认清理Binlog规则
超过以下任一规则限制时,Binlog会上传到OSS,然后从最早的Binlog开始清理,直到不超过规则限制。清理本地Binlog会有任务调度,有一定延迟。
- 保存最近18个小时内的Binlog文件。
- 保存最多60个Binlog文件。
- 保证空间使用率(本地Binlog大小/实例总存储空间大小)不超过30%。
- 保证实例存储空间使用率不超过80%或剩余空间不小于5 GB。
说明 当本地Binlog超过规则限制仍未清理,可能是客户端故障或DTS任务阻塞,需要将相应的任务终止。您可以在日志管理页面查看错误日志查看线程ID,例如:[Warning] file /home/mysql/data3001/mysql/mysql-bin.069435 was not purged because it was being readby thread number 17126285
设置本地日志(Binlog)上传规则
手动上传本地日志(Binlog)
您可以手动发起Binlog上传,上传后实例本地会清理所有Binlog。清理本地Binlog会有任务调度,有一定延迟。
说明 基础版暂不支持一键上传Binlog。
- 进入备份恢复页面。
- 单击一键上传Binlog,在弹出的提示框中单击确定。
相关API
API | 描述 |
---|---|
PurgeDBInstanceLog | 清理或收缩RDS实例日志。 |