假设我在服务器A(主服务器)和服务器B(从服务器)之间配置了流复制。如果服务器A崩溃,服务器B升级,我是否能够使用pg_rewind (其中服务器B是源,服务器A是目标)使服务器A与服务器B同步?根据文档关于pg_rewind的规定:
结果相当于用源目录替换目标数据目录。
我假设倒带不会“倒带”任何东西,但因为:
当目标服务器在运行pg_rewind后第一次启动时,它将进入恢复模式,并在发散点后重播源服务器中生成的所有WAL。
我难道不能将服务器A放在恢复模式中,恢复由server生成的所有WAL段,即使它们处于不同的时间线上?
谢谢!
发布于 2020-05-25 09:14:27
您经常需要pg_rewind,因为升级的备用服务器可能是故障主服务器后面的几个事务。这种情况甚至可以发生在同步复制中。
pg_rewind通过将所有受影响的块替换为来自提升(源)服务器的块来撤消这几个事务。这也是为什么恢复将从两个服务器的最后一个公共检查点开始。
https://dba.stackexchange.com/questions/267801
复制相似问题