复制失败;如何重新开始?

Mar*_*man 10 postgresql-9.1

我在 Ubuntu 上运行 Postgres 9.1.6,并且在主从之间进行了流式复制设置。一切都运行顺利,直到数据库崩溃,我们不得不重新启动两个盒子。

现在,复制已停止,在检查两个框上的日志时,我看到以下消息:

CDT 致命:请求的 WAL 段 0000000100000224000000FA 已被删除

一遍又一遍地重复相同的片段。从我的谷歌搜索来看,似乎复制服务器正试图从主服务器检索这个段,但它不再存在了。好的,但是如何解决这个问题?我是否需要重新备份并将其同步到从站?有没有一种简单的方法可以让奴隶恢复同步?

小智 7

是的,您必须为从站提供一个新的主站基础备份(仅用于流式复制步骤 1 到 4)。

您的问题可能是因为 wal_keep_segments 的值太低而出现的。该值需要足够高,以便当从站停机一段时间后,主站不会开始回收从站尚未处理的段。