使用 Postgres 9.4.4 和 Amazon Web Services 复制特定表

Dar*_*der 6 postgresql replication transactional-replication postgresql-9.4 amazon-rds

我目前在 Amazon Web Services 上设置了一个Postgres 9.4.4 RDS实例。在这个实例中,我持有 20 张桌子。此外,我还在我的本地服务器(操作系统:64 位 Linux)上安装了 Postgres 9.4.4,它在一个数据库下保存了大约 30 个表。云实例和我的本地服务器实例都有重叠的表,即云上有一些我复制到本地的表,反之亦然。我不太熟悉 Postgres 复制过程,因为我从来不需要它们,而且目前通过 python 脚本在这两个数据库之间读/写/附加表的传输效率很低。

我将不胜感激来自社区的任何关于最佳程序的指导。理想情况下,我想要一个解决方案,其中云上的某些表可以在本地成为 MASTER 和 SLAVE,并允许其他其他表在本地成为 MASTER,在云中成为 SLAVE。这可能吗?

听说过 Burcardo 或 Slony 可以做到这一点吗?这方面的任何好的文档/站点也会有所帮助。

dez*_*zso 1

根据AWS 文档,从版本 9.4.9 开始,可以从 RDS Postgres 实例进行逻辑复制。这将解决 RDS -> 本地方向。

文档并没有说得很清楚,但似乎从10.4版本开始,RDS实例甚至可以是逻辑复制的接收端(订阅者):

从 PostgreSQL 10.4 版本开始,RDS 支持 PostgreSQL 10 逻辑复制的发布和订阅 SQL 语法。