在Postgres 9.4中,插槽复制不起作用

我在Windows 2008服务器上使用Postgres 9.4。 有三个这样的实例,我正在使用。 一个作为主,另外两个作为主/备用。 Postgres的版本在所有三个实例中都是9.4。 我已经使用物理插槽设置了复制。 但复制不起作用。 SELECT * from pg_stat_replication查询SELECT * from pg_stat_replication 返回0行,并在SELECT * from pg_replication_slots ; 该插槽显示它不活动(“活动”列中的'f')。

我有以下configuration:

在小学/大师:

  1. wal_level = hot_standby
  2. max_wal_senders = 2
  3. max_replication_slots = 2
  4. hot_standby =开

次要/待机:

  1. wal_level = hot_standby
  2. hot_standby =开

secondary / standby上的recovery.conf文件:

  1. standby_mode = on
  2. primary_conninfo ='host = 192.168.8.192 port = 5432 user = postgres password = 123456'
  3. primary_slot_name ='testing'
  4. recovery_min_apply_delay = 1分钟

有什么可能丢失? 我用Master的数据备份引导了备用服务器。 谢谢。

我在Ubuntu上遇到类似的问题。 对于我来说, replication.conf不在正确的位置。

根据描述recovery.conf的章节中有关stream式复制的Postgres Wiki:

$编辑器recovery.conf

请注意,recovery.conf必须位于$ PGDATA目录中。

它不应该与postgresql.conf位于同一个目录中

一旦我将recovery.conf移动到正确的位置并重新启动Postgres, SELECT * from pg_stat_replication返回active = true

希望有所帮助。