mysql - 具有外部主节点的复制阵列中 RDS 快照的意外行为
问题描述
在设置复制时,RDS 快照似乎无法正常工作。如果我做出不正确的假设,或者只是做错了什么,我想获得一些指导。
这是发生的事情:
- 我将 RDS 实例设置为外部 mysql 实例的从属(AWS 之外)
- 我让实例赶上,复制成功运行了几天,每晚在 RDS 上拍摄从属服务器的快照。
- 一些查询意外地在从属服务器上运行,导致复制错误,并导致数据库完全不同步。
- 我从快照中恢复了从站。
我所期望的:
- 快照恢复后,新的从库上的复制将能够赶上主库的位置。
实际发生了什么:
- 快照恢复后,数据恢复了,但复制设置没有。
show slave status
返回空值。
TLDR ; AWS 文档指出,RDS 快照备份了整个数据库实例,因此我希望它的所有设置也会被备份,包括外部主服务器的设置,但情况似乎并非如此。RDS 的快照功能有哪些限制,如果从站离同步太远,应该如何处理与外部主站的复制?
谢谢!
解决方案
如果您在问题中提到的复制错误长时间停止复制,Amazon AWS RDS 将停止复制。这样做是为了防止源端有过多的存储需求。当使用快照恢复 RDS 副本时,在这种情况下新副本将永远不会赶上,因为在这种情况下二进制日志也会从源中删除。AWS 文档中提到了这一点,但它也指出,要发生这种情况,复制错误应该持续一个月。
推荐阅读
- reactjs - 如何在 React 中取消选中 Radio.Button v4
- sql - 从 to-be-found-row +1 中找到另一行具有相同字段值的所有行
- java - 如何减少或禁用 Flink 中的检查点日志
- angular - “在“d3”中找不到导出“鼠标”(导入为“d3”)
- reactjs - 当我部署到 Google App Engine 时,我的反应前端没有改变
- c++ - 在 C++ 中格式化字符串的最佳方法
- python - Python 脚本在 Thonny 中运行,但在终端中出现错误
- linux - 将所有文件夹和文件移动到Linux目录下主题名相同的文件夹中
- python - 由于 LC_ALL 无法更改语言环境错误,使用 pytest 启动 postgres 夹具失败
- r - 从一月到当年和上一年的最新可用月份的总和