在postgresql中同步/复制两个以上的数据库?

时间:2013-12-14 19:38:16

标签: postgresql openerp postgresql-9.1 postgresql-9.2

我有5个用户使用5个不同的服务器(使用openerp),每个用户使用相同的数据库副本。每当用户将数据输入到他的数据库时,它应该同步到第6个服务器的数据库,然后将第6个数据库中的数据同步到所有其他4个用户数据库。因此,任何数据库中的任何数据条目都应同步到在不同服务器中运行的其他数据库那可能吗?我怎么能实现它?

编辑: 我找到了Bucardo,但每张桌子都需要主键。但是在openerp中,有许多关系表没有主键。

2 个答案:

答案 0 :(得分:1)

这称为主 - 主或多主复制:

http://en.wikipedia.org/wiki/Multi-master_replication#PostgreSQL

http://wiki.postgresql.org/wiki/Replication,_Clustering,_and_Connection_Pooling

您还可以查看SymmetricDS或Daffodil,它们允许您通过HTTP进行同步。

答案 1 :(得分:1)

纯PostgreSQL安装目前仅支持单主复制。 但是,您可以通过安装其他工具http://wiki.postgresql.org/wiki/Clustering来实现多主复制。

您还应该查看关于此主题Chapter 25. High Availability, Load Balancing, and Replication

的Pg文档