RDS MySQL实例Binlog文件导致实例空间满,该如何解决?
前提条件
对于RDS MySQL 5.5、5.6、5.7和8.0版本的实例,建议您提前扩容磁盘,保证磁盘使用率不超过80%,扩容方法请参见变更配置。其次建议您清理无用日志或数据。
注意事项
执行清理无用本地日志步骤前,请先查看以下注意事项:
Binlog文件记录实例的事务信息,是RDS实例高可用和可恢复性的基础,建议不要关闭。可以通过一键上传Binlog功能上传到OSS来释放磁盘空间或者修改本地Binlog设置,详情请参见本地Binlog设置。
清理Binlog文件有延迟,请耐心等待实例日志空间使用量的下降。
一键上传Binlog会在后台异步提交清理任务,且清理任务会将已写入的Binlog上传到OSS(非用户购买的OSS)上,然后再从实例空间中删除Binlog文件,当前正在被写入的Binlog文件由于未完成写入,是不可以被清理的。因此,清理过程会有一定延迟,建议您单击一键上传Binlog后耐心等待一定时间,请勿多次单击该按钮,可以在基本信息页中查看磁盘空间是否减小。
由于DML等操作(比如涉及大字段的DML操作)会快速生成Binlog,可能会导致上传Binlog文件到备份空间并且从实例空间中删除的处理速度跟不上实例生成Binlog文件的速度,在这种情况下,建议您考虑升级磁盘空间,并且排查Binlog快速生成的原因。
一键上传Binlog
1、登录RDS管理控制台,在页面左上角,选择实例所在地域。
2、找到目标实例,单击实例ID。
3、在左侧导航栏中单击备份恢复。
4、在右上角单击一键上传Binlog,在弹出的对话框中单击确定。
说明:
a、一键上传Binlog功能会有一定延迟,请耐心等待15分钟左右。
b、本操作会删除除最新的两个本地日志文件外的所有日志文件,如果只有两个日志文件,本操作不会删除任何文件。
c、基础版实例不支持一键上传Binlog功能,建议您参见修改本地日志(Binlog)文件设置删除本地日志。
修改本地日志(Binlog)文件设置
1、登录RDS管理控制台,在页面左上角,选择实例所在地域。
2、找到目标实例,单击实例ID。
3、在左侧导航栏中单击备份恢复。
4、选择本地日志设置页签,单击本地日志保留策略,根据您的实际情况,设置对应的值。
说明:保留时长若设置为0,表示本地不保存Binlog日志,直接上传至OSS。
后续维护
若锁定问题已解决,为了预防再次出现锁定问题,建议设置在资源不足时,实例自动扩容存储空间的功能,详情请参见设置存储空间自动扩容。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。