根据文档:
然后,如果您创建的事务超过16M * 64 = 1GB,则从库会报错,因为最大文件数小于所需数,对吧?那么问题来了:为什么是最小值?为什么不是最大值? 更新:正如文档中第一句话所述,我谈论的是流复制。
同时根据我的经验,您可以创建从库并将wal_keep_segments从默认值更改为64,观察xlog数量增加直到达到64个文件,我认为这是最大值,而不是最小值。wal_keep_segments(整数)指定在pg_xlog目录中保留的过去日志文件段的最小数量。
然后,如果您创建的事务超过16M * 64 = 1GB,则从库会报错,因为最大文件数小于所需数,对吧?那么问题来了:为什么是最小值?为什么不是最大值? 更新:正如文档中第一句话所述,我谈论的是流复制。
主服务器(没有级联复制),而不是从服务器。这些设置控制内置流复制功能的行为
18.6.1 发送服务器
archive_command
是“do-nothing” cd .
,recovery.conf
中也没有设置restore_command
。
restore_command
吗? - Craig Ringer64
对于您来说太低了。另一方面,设置“最大”wal文件数量将毫无意义。Postgres会通过保持在其下方来尊重此最大值,并且当次要服务器落后太远时仍然会错过缺失的文件。 - Daniel Vérité