文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Pg 流复制方式HA 版本升级步骤

2024-04-02 19:55

关注

一、HA Description:

Master:192.168.1.10

Slave:192.168.1.20

VIP: eth0:pgvip(master and slave) 192.168.1.30

PGDATA: /pgdata95

pg_version: 9.5.2


二、upgrade steps:

(一)升级Slave数据库软件版本

1.postgres(192.168.1.20)

pg_ctl -D /pgdata95 stop -m fast


2.postgres(192.168.1.20)

update postgresql soft version,不使用pg_upgrade命令方式升级,仅小版本升级使用9.5.2 --》 9.5.3

安装同主分支版本 例如,9.5.3

3.postgres(192.168.1.20)

修改数据库PATH为最新版本的bin路径,例如,

# Installation prefix

prefix=/opt/pgsql/9.5.7(新版本软件目录)

# Data directory

PGDATA="/pgdata95"(原data目录)

启动salve

pg_ctl -D /path/to/database start



(二)停止VIP,禁止提供服务

4.root(192.168.1.10)

ifconfig eth0:pgvip down


(三)Master 执行检查点

5.db super(192.168.1.10)

checkpoint;


6.postgres(192.168.1.10)

SELECT sent_location, replay_location

FROM pg_stat_replication WHERE usename = 'rep_user';


7.postgres(192.168.1.10)

重复以上查询,直到sent_location 和 replay_location 相等


8.postgres(192.168.1.10)

pg_ctl -D /pgdata95 stop -m fast


(四)提升Slave为Master

9.postgres(192.168.1.20)

pg_ctl -D /pgdata95 promote


(五)启动VIP,对外提供服务

10.root(192.168.1.20)

ifconfig eth0:pgvip 192.168.1.30 up


(六)通知研发或者运维重启应用程序的数据库连接池

11.如果必要,通知研发与支持重启应用程序的数据库连接池。


(七)升级 Master 数据库软件版本

12.postgres(192.168.1.10)

update postgresql soft version

修改数据库PATH为最新版本的bin路径,例如,

# Installation prefix

prefix=/opt/pgsql/9.5.7(新版本软件目录)

# Data directory

PGDATA="/pgdata95"(原data目录)


(八)重做Slave

13.postgres(192.168.1.10)

清空数据库数据目录,rm -Rf /pgdata95


14.postgres(192.168.1.10)

pg_basebackup -U rep_user -h 192.168.1.20 -D /pgdata95 --checkpoint=fast --xlog-method=stream -R


(九)启动新的Slave

15.postgres(192.168.1.10)

pg_ctl -D /path/to/database start


使用方式

以上升级最好在数据库主版本一致的情况下进行

  1. 如slave(9.5.2)升级到(10.0.beta1),pg_upgrade升级方式

    slave日志报错:

    2017-05-23 00:09:19.319 CST [10078] FATAL:  database system identifier differs between the primary and standby

    2017-05-23 00:09:19.319 CST [10078] DETAIL:  The primary's identifier is 6417769161397888214, the standby's identifier is 6422989582

    707312045.

    2017-05-23 00:09:34.340 CST [10098] FATAL:  database system identifier differs between the primary and standby

    2017-05-23 00:09:34.340 CST [10098] DETAIL:  The primary's identifier is 6417769161397888214, the standby's identifier is 6422989582

    707312045.

    如遇到此情况,需要先停止Master数据库对外服务,然后升级Master为大版本,重新做Slave解决

  2. 如果slave(9.5.2)升级到(9.5.3)

 可以顺利升级




阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯