1. 确认多个主库的数据情况,保证要关闭的主库数据较少 备份所有主节点的数据目录 连接到主数据库中,人为判断业务数据 select sys_current_wal_lsn(); 注意:切换时间线时执行 checkpoint 会导致较高时间线的数据库 LSN大,但是数据并不一定最新。 2. 如果recovery=automatic,请先暂停集群 repmgr service pause repmgr service status #查看是否成功暂停:'Pause?' 列为yes 3. 关闭其中一个主库(有条件,关闭后可以备份data) sys_ctl -D data stop 4. 取消集群暂停 repmgr service unpause repmgr service status #查看是否取消暂停,集群恢复正常:'Pause?' 列为no 5. (可选)恢复原主库为备库 kbha -A rejoin -h ${新主库IP} #如果新主库时间线较低,上面命令可能会失败,请执行以下命令恢复 repmgr node rejoin --force-rewind --no-check-wal -h ${新主库IP} -U esrep -d esrep -p ${新主库端口}
集群双主问题处理
于 2024-01-03 14:25:23 首次发布