将AWS RDS postgres db与可写RDS postgres db同步

时间:2017-02-10 06:59:56

标签: postgresql amazon-web-services amazon-rds amazon-read-replica

我想有一个Postgres数据库,它与我的生产数据库同步,就像一个只读副本,但我也想写入该数据库。 AWS为MySQL和MariaDB提供了可读写的读取副本,但不提供Postgres。还有其他方法可以达到这个目的吗?

1 个答案:

答案 0 :(得分:1)

嗯,根据定义,只读副本不可写,所以我担心我不会认为你会对这种方法有太多的好运。

读取副本的Amazon themselves state仅用于只读流量:

  

您可以创建给定源数据库实例的一个或多个副本   提供大量应用程序读取来自多个副本的流量   您的数据,从而提高了总读取吞吐量。

现在,正如你所说,对于MySQL,可以将升级到主人(因此成为可写),但需要特别注意"当需要时#34;下面:

  

当需要成为独立数据库时,也可以提升只读副本   实例

但是,RDS本身不支持MySQL的多主机部署。

对于PostgreSQL来说,事情甚至更糟糕" Postgres的AWS RDS没有(在撰写本文时)支持自动宣传阅读副本,只留下Multi-AZ作为您的唯一选择。

在RDS之外,PostgreSQL的多主机部署(听起来就像你正在寻找的那样)需要更精细的设置。您可以在clustering section of their wiki

中找到更多信息

作为一般说明,横向扩展关系/ SQL数据库可能不是你会有很多乐趣的东西,并且你一定会遇到问题。

那是因为它们根本不是为水平缩放而设计的,就像新的" NoSQL"数据库是(看看MongoDBCassandra等)。你最好不要垂直缩放它们,因为这会带你(而且它会带你一些)。

我知道唯一可以扩展的关系数据库是CockroachDB,但是虽然这是一个非常有前途的解决方案,但仍处于测试阶段 - 那里有#39} ;它尚未发布1.0版本。