postgresql 流复制主从切换

postgresql 流复制主从切换,第1张

概述主从复制切换 思路 全备备机(基础备份),恢复到原主机 然后恢复复制 然后再切换到原来的主机 主库 cd /usr/lib/postgresql/9.3/ ./pg_ctl -D /var/lib/postgresql/9.3/main/ -m fast stop ./pg_controldata /var/lib/postgresql/9.3/main/ Latest checkpoint l

主从流复制切换

思路

全备备机(基础备份),恢复到原主机

然后恢复复制

然后再切换到原来的主机


主库

cd /usr/lib/postgresql/9.3/

./pg_ctl -D /var/lib/postgresql/9.3/main/ -m fast stop


./pg_controldata /var/lib/postgresql/9.3/main/

Latest checkpoint location: 0/84000028

Prior checkpoint location: 0/83EF8CF0

Latest checkpoint's REDO location: 0/84000028

Latest checkpoint's REDO WAL file: 000000010000000000000084


从库

cd /usr/lib/postgresql/9.3/bin/

./pg_ctl -D /var/lib/postgresql/9.3/main/ -m fast stop

./pg_controldata /var/lib/postgresql/9.3/main


Latest checkpoint location: 0/84000028

Prior checkpoint location: 0/83EF8C50

Latest checkpoint's REDO location: 0/84000028

Latest checkpoint's REDO WAL file: 000000010000000000000084


切换

确保standby和primary 的pg_controldata checkpoint的输出结果一致。就可以切换standby 和 primary了。


启动standby,并且touch一个在recovery.conf中的trigger文件,使standby promote.为primary库

这步我是用新版的流复制搭建的 trigger 文件为空。


mv recovery.conf recovery.conf.bak

mkdir /var/lib/postgresql/9.3/wal.backup

chmod 777 /var/lib/postgresql/9.3/wal.backup

然后启动stanby服务器

./pg_ctl -D /var/lib/postgresql/9.3/main/ start



修改原primary库的配置文件 并新建recovery.conf,需要注意的是新增一条

recovery_target_timeline = 'latest'


启动原primary,此时切换完成,primary 变standby,standby 变primary

总结

以上是内存溢出为你收集整理的postgresql 流复制主从切换全部内容,希望文章能够帮你解决postgresql 流复制主从切换所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1177703.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存