我在Ubuntu上有一个Postgres 9.3 Master-Slave流复制设置 我想通过打破复制将Slave转换为读写。但是,我不希望Master以任何方式受到影响,因为它是一个关键的 Production 。我想要的只是拥有Master的克隆,以便我可以测试pg_upgrade。
我可以运行一个" pg_ctl提升"在奴隶上,打开奴隶进行读/写?运行" pg_ctl是否促进"对奴隶有什么影响吗?
非常感谢。
答案 0 :(得分:1)
来自docs:
要触发日志传送备用服务器的故障转移,请运行pg_ctl 使用指定的文件名和路径提升或创建触发器文件 通过recovery.conf中的trigger_file设置。如果你正在计划 使用pg_ctl promote进行故障转移,不需要trigger_file。
所以pg_ctl promote -D data_dir
和touch trigger_file
同等地促进了奴隶。在发件人停止发送的意义上,主人受到被提升的影响。从主站流出的其他从站也以相同的方式受到影响。推广是一项标准行动。
唯一具体案例would be cascaded replication:
如果上游备用服务器被提升为新的主服务器, 下游服务器将继续从新主服务器流式传输 recovery_target_timeline设置为' latest'。
如果你没有任何下游" sublaves",请勇敢地推广它。