POSTGRESQL 在主从流复制中,在主库失败切换后,从库变为主库后,如果主库不是因为硬件的原因,想继续拉起来,并且加入到新的复制关系中,一般都会通过pg_rewind的程序来进行拉起来....另外pg_rewind主要的针对的场景就是主从切换后,主重新加入到新的集群的场景,在wal 日志丢失和不全的情况下,是无法来进行相关的复制的工作的....,直接在文件系统级别拷贝,其中还包含pg_xact中的文件以及配置文件等等
3 开始应用在切换点后创建的checkpoint点后的wallog数据并进行重放,pg_rewind本身是不会进行相关的工作...,而是通过打入一个备份的标签,在节点开启后重放日志,达到最终的一致性.
1 正常停止主库
2 提升从库
此时需要注意,如果使用了物理复制槽,则必须确认(新主上也有物理复制槽,否则在此设置连接会失败..., 查看从库的数据状态
复制状态
以上情况中,pg_rewind都可以将失败的主, 拉起来并和"新主"进行数据同步.