PostgreSQL:master和standby的archive命令可以指向同一个目录吗?

Cle*_*ves 5 postgresql replication postgresql-9.1

我在集群中使用流式复制和 PITR(WAL 文件),目前我有不同版本postgresql.conf的主服务器和备用服务器。

文件中唯一的区别是归档命令,它指向不同的目录。

例如,在主人我有:

archive_command = 'cp %p /dbckp/server1master/%f'
Run Code Online (Sandbox Code Playgroud)

在待机状态下:

archive_command = 'cp %p /dbckp/server2master/%f'
Run Code Online (Sandbox Code Playgroud)

我认为,如果备用系统在“备用模式”下没有生成任何档案,我可以使用相同的目录并在单个postgresql.conf.

Chr*_*ers 4

理论上这应该有效。毕竟,这些文件应该是相同的。实际上,我认为这很可怕,我不会这样做。我会担心文件锁定争用,而且如果我将两次归档到两个位置,如果我发送到不同的文件服务器,我会得到 WAL esp 的完整备份。如果一个在糟糕的时间失败了,我仍然可以从另一个获取 PITR 的日志。

请记住,如果此设置出现问题,您可能会失去 PITR 向前滚动超过某个点的能力。此外,如果您按现在的方式进行设置,则可以使用文件权限和属性来防止覆盖现有文件的现有部分,这对于备份保证非常有帮助。