记录一次PG数据库宕机的REPMGR切换

【记录一次PG数据库宕机的REPMGR切换】五陵年少金市东,银鞍白马渡春风。这篇文章主要讲述记录一次PG数据库宕机的REPMGR切换相关的知识,希望能为你提供帮助。

1.PG数据库主节点发生宕机以后,确认repmgr cluster now已经发生了切换,原来备库变成主库。

2. 发生切换后需要对原来的主库进行恢复。

首先需要启动一次数据库,这是将这个要被恢复数据库进行刷新清理一次日志。
由于采用了zfs方式,发现zfs模块没启动,wiki搜索下zfs,启动下zfs,然后再进行执行以下语句。
systemctl start postgresql-11
然后repmgr cluster now,发现为双主了。
再次进行对该已经进行failvoer节点的进行关闭.
systemctl stop postgresql-11
再对数据库添加到数据库中。注意,该节点为原主库。xxx.xxx.xxx.xxx为新主库
repmgr -f ~/repmgr.conf node rejoin -d "host=xxx.xxx.xxx.xxxport=5432 user=repmgr dbname=repmgr password=xxx" --force-rewind

10几分钟后,数据库成功加入数据库集群。在此期间,我们检查了下pg_wal下的归档,发现重新加入主库的时候,有一段事件,新加入的这里面的日志为0,不要紧
我们等着就行了。

3.
应用要求PG数据库启动在25.132上,这样就必须将改数据库进行switchover。

首先关闭新主库上的vip
然后进行手动switchover
执行以下命令 postgres用户。
repmgr standby switchover -f ~/repmgr.conf --siblings-follow
2分钟左右切换成功

最后添加vip到25.132

4. 配置下repmgr守护进程。


postges用户
repmgrd -f ~/repmgr.conf -d


    推荐阅读