这样将一个失败的主库恢复为从库的速度和效率都是最高的. pg_rewind 会评估源和目的集群的时间轴信息,以及偏离点的信息....另外pg_rewind主要的针对的场景就是主从切换后,主重新加入到新的集群的场景,在wal 日志丢失和不全的情况下,是无法来进行相关的复制的工作的....,而是通过打入一个备份的标签,在节点开启后重放日志,达到最终的一致性.
1 正常停止主库
2 提升从库
此时需要注意,如果使用了物理复制槽,则必须确认(新主上也有物理复制槽,否则在此设置连接会失败...最后我们模拟一下,突然掉电的情况,看看是否有其他的变化....password=repl dbname=postgres' -P
配置好复制,启动新的从库
总结: 整体pg_rewind 在多种情况下,都可以保证失败后的数据库重新拉起来并进入新的复制,