KingbaseES V8R6集群运维案例--主库PITR恢复后备库无法连接到集群
案例说明:
KingbaseES V8R6集群,在主库执行PITR恢复后,clone备库;但是启动集群后,备库无法连接到主库,流复制状态和集群节点状态异常。
适用版本:
KingbaseES V8R6
一、问题现象
如下图所示,集群备库节点状态和流复制异常:
二、问题分析
1、检查备库数据库服务状态
如下图所示,sys_log日志显示备库已经可以正常连接,通过ksql可以访问数据库。
2、备库执行repmgr standby follow注册上游节点(upstream)
如下图所示,备库执行“repmgr standby follow”成功,但是查看集群节点状态仍然异常。
如下图所示,集群节点状态:
3、执行repmgr standby register
在备库执行“repmgr standby register”后,集群节点状态仍然异常。
三、问题解决
1、重启备库数据库服务
在重启备库数据库服务时,发现启动失败,查看sys_log 日志:
---如上图所示,在备库的sys_log日志中发现事务恢复的日志信息,经与操作人员沟通,此集群主库先做过PITR的数据库恢复,然后做了备库的clone。
2、检查备库的kingbase.auto.conf文件
如下图所示,备库的kingbase.auto.conf文件中仍然包含有PITR恢复后的配置参数,导致数据库服务启动后就自动又执行了PITR的恢复,数据库服务启动失败。
Tips:
对于recovery的参数,应该在主库恢复完成后,启动数据库服务前将参数删除或注释,然后再执行备库的clone。
3、清理PITR恢复参数
将主备库下kingbase.auto.conf中的recovery相关参数注释或删除,重新启动备库数据库服务后,集群节点状态及流复制恢复正常。
四、总结
对于集群执行PITR的恢复,KingbaseES的官方文档有很好的解释和说明,大家可以参考。
https://help.kingbase.com.cn/v8/highly/backup-restore/backup/sys-rman-5.html#id20
以下为关键注意事项:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!