首页 > 解决方案 > 具有外部主节点的复制阵列中 RDS 快照的意外行为

问题描述

在设置复制时,RDS 快照似乎无法正常工作。如果我做出不正确的假设,或者只是做错了什么,我想获得一些指导。

这是发生的事情:

  1. 我将 RDS 实例设置为外部 mysql 实例的从属(AWS 之外)
  2. 我让实例赶上,复制成功运行了几天,每晚在 RDS 上拍摄从属服务器的快照。
  3. 一些查询意外地在从属服务器上运行,导致复制错误,并导致数据库完全不同步。
  4. 我从快照中恢复了从站。

我所期望的:

  1. 快照恢复后,新的从库上的复制将能够赶上主库的位置。

实际发生了什么:

  1. 快照恢复后,数据恢复了,但复制设置没有。 show slave status返回空值。

TLDR ; AWS 文档指出,RDS 快照备份了整个数据库实例,因此我希望它的所有设置也会被备份,包括外部主服务器的设置,但情况似乎并非如此。RDS 的快照功能有哪些限制,如果从站离同步太远,应该如何处理与外部主站的复制?

谢谢!

标签: mysqlamazon-web-servicesamazon-rdsdatabase-replication

解决方案


如果您在问题中提到的复制错误长时间停止复制,Amazon AWS RDS 将停止复制。这样做是为了防止源端有过多的存储需求。当使用快照恢复 RDS 副本时,在这种情况下新副本将永远不会赶上,因为在这种情况下二进制日志也会从源中删除。AWS 文档中提到了这一点,但它也指出,要发生这种情况,复制错误应该持续一个月。


推荐阅读