同一服务器上的 2 个数据库之间的 Postgres 复制

Ale*_*ich 1 postgresql

我需要创建现有数据库的副本,它将任何更改操作从主数据库复制到从数据库,即创建某种镜像。我在网上找到了很多例子,但它们都描述了主从服务器位于不同服务器上时的过程。我想在 master 所在的同一服务器上创建一个写副本,而不启动第二个 Postgres 实例。

是否可以这样做?您能给我指出一个方向,让我可以找到解决方案吗?

谢谢。

PS 我知道在两台服务器上进行复制更好,但我只需要在一台公共服务器上进行复制即可。

jja*_*nes 6

如果您想要物理复制,则需要运行两个 PostgreSQL 实例。如果它们位于同一台服务器计算机上,则它们将需要具有不同的端口号。不同的端口号是唯一的复杂性,否则就像在两个不同的服务器上运行一样。

如果您想要逻辑复制,您可以在单个实例中执行此操作,但您将需要跳过一些步骤来创建实例内的订阅,如“注释”部分中所述