故障转移后 AWS RDS Postgres 逻辑复制槽的行为

问题描述 投票:0回答:1

我正在多可用区设置中使用 AWS RDS Postgres v13,使用逻辑复制槽复制到另一个 RDS 实例。在启动带有故障转移的重新启动以进行测试后,我注意到尽管在主角色和备用角色之间进行了切换,但复制仍然无缝地继续进行。这是出乎意料的,因为我认为我可能需要在新的主节点上重新创建复制槽。

我对 AWS RDS 用于通过故障转移维持复制槽连续性的机制感到好奇,特别是因为文档没有明确解释在此类事件期间如何管理复制槽。 RDS 如何确保复制槽在新主服务器上保持功能而无需手动干预?

希望获得有关此主题的见解或资源。

谢谢

postgresql amazon-rds logical-replication
1个回答
0
投票

在AWS RDS Postgres逻辑复制中,每当您在主实例中创建一个插槽时,相同的插槽就会复制到备用实例。备用实例中的插槽与主实例中的插槽持续同步,我认为可能在插槽中使用了pg_replication_slot_advance函数备用实例赶上主槽。

故障转移后,由于该插槽已经存在于新升级的主节点中并具有更新的值,因此逻辑复制将无缝继续。

© www.soinside.com 2019 - 2024. All rights reserved.