PostgreSQL - 定期将数据从一个数据库复制到另一个数据库

时间:2016-08-18 01:35:42

标签: postgresql

我试图建立一个包含2个数据库的体系结构,比如预览实时,它们具有完全相同的模式。用例是可以对预览数据库进行编辑,然后在审核和批准后将其推送到实时数据库。生产应用程序将从实时数据库中读取。

在没有将实时数据库关闭的情况下,将所有数据从预览数据库推送到实时数据库的最合适方法是什么?理想情况下,从预览到实时的复制将是原子事务。

我在MSSQL中使用过这种类型的设置,但我对Postgres来说还是比较新的。所以我愿意听取其他方法来设计这个(也许是Schemas?)。

编辑:使用单独数据库的主要原因是我可能需要多个目标数据库(而不仅仅是一个"直播数据库)。我也可能需要动态切换目标数据库而不改变源数据库模式。

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找的是热备用#34;这将是Postgresql的一个单独实例,可能在同一台服务器上,但通常不是,这是主服务器的近实时副本。

总的来说,这是通过将二进制事务日志从主服务器传送到备份服务器,然后重放"来完成的。他们在那里。传输日志的确切机制可能因您的要求而异。

幸运的是,关于此的文档非常好:

https://www.postgresql.org/docs/9.3/static/warm-standby.html

https://www.postgresql.org/docs/9.0/static/hot-standby.html