集群备库重做步骤

Posted 瀚高PG实验室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集群备库重做步骤相关的知识,希望对你有一定的参考价值。

目录
环境
症状
问题原因
解决方案

环境
系统平台:Linux x86-64 Red Hat Enterprise Linux 7
版本:5.6.5
症状
HG_Repmgr多是通过repmgrd守护进程对集群状态进行监控来自动完成相应的管理,如果集群有人工干预或人工误操作等行为,此时Repmgr集群管理系统可能就不能进行自动的管理工作,可能会出现集群状态异常的情况,这时如需使集群恢复正常,则可重做备库。

问题原因
故障模拟(repmgrd进程正在运行中):
主库 192.168.197.128
备库 192.168.197.132
停掉主库:pg_ctl stop -mf
等待一分钟后,启动主库,检查集群状态:此时集群状态出现异常:

解决方案
由于repmgrd进程正在运行中,故在主库停掉后,repmgrd会检测到主库挂掉并选取一个备库提升为主库,所以原备库的信息最全,我们将原备库作为新主库,原主库重做,使其作为备库加入集群。

①.停掉原主库repmgrd进程

ps -ef|grep repmgrd
kill -15 repmgrd进程号

②将原主库停掉

pg_ctl stop -mf

③将原主库的数据目录移动或修改名称

mv data data-bak
④在原主库中使用repmgr standby clone 重做备库
repmgr standby clone -h 新主库ip -U 用户名 -d 数据库名
⑤启动备机数据库并注册

pg_ctl start
repmgr standby register
⑥查看集群状态:

repmgr cluster show

集群状态正常

⑦启动repmgrd进程

repmgrd -d
重做备库完成

以上是关于集群备库重做步骤的主要内容,如果未能解决你的问题,请参考以下文章

集群备库重做步骤

DG不同步,MRP0进程打不开

AlwaysOn业务IP和高可用IP分开使用

PolarDB-X 数据节点备库重搭

数据库的读写分离数据库是怎么同步的

修改重做日志文件(redo log)大小