postgres归档目录下wal文件的使用

Use of wal files in archive directory of postgres

我有一个 2 节点 PostgreSQL 13.4 HA 设置。我保留了 archive_mode=on。使用此配置,wal 文件将从 pg_wal 目录移动到存档目录。另外,我正在使用流复制来同步主节点和备用节点。

我想了解是否将 wal 文件从 pg_wal 目录移动到存档目录,而没有复制到从服务器(可能是由于 postgres 的 wal 文件创建率很高), postgres 是否仍然能够将它们复制到备用状态,或者我需要调整我的 postgresql.conf 以在 pg_wal 中容纳足够的 wal 文件,然后再将它们发送到存档目录。

一旦主服务器将 WAL 文件发送到存档并将其从 pg_wal 中删除,它就不会再尝试将其取回以便将其交付给副本。

但是您可以将副本配置为具有 restore_command,它会从存档本身获取文件。这样,如果副本被主服务器拒绝(例如因为文件已被删除),它可以回退到存档。然后一旦它用完了存档,它就会切换回流式传输。