KingbaseES V8R6集群运维案例之---云主机cluster模式备份sys_rman.conf构建故障
案例说明:
云主机环境,KingbaseES V8R6集群主库执行sys_backup.sh init,wal日志归档失败,手工执行归档命令出现‘command must be run on the kingbase host’错误,导致备份初始化故障。
适用版本:
KingbaseES V8R6
一、问题现象
如下图所示,在执行sys_backup.sh init主库执行初始化备份时,长时间hang住:
查看数据库sys_log日志,发现wal日志归档失败:
手工执行归档命令,出现‘command must be run on the kingbase host’错误:
二、问题分析
1、查看sys_backup.conf,本次备份采用cluster模式,在主库上执行备份,repo节点也是主库,配置无错误。
2、执行sh -x sys_backup.sh init 发现,在生成sys_rman.conf文件时,出现异常:
如下图所示,在生成sys_rman.conf文件时,备库地址对应的应该是kb2-host,而初始化生成的是kb1-host:
sys_rman.conf配置:
如下图为备份正常的sys_rman.conf配置案例:
3、由于使用cluster模式备份,需读取repmgr.conf配置,检查repmgr.conf配置,没有发现异常。
三、问题解决
1、终止sys_backup.sh init初始化命令执行。
2、手工修改sys_rman.conf文件(默认不建议手工修改):
如下图所示,将kb1-host改为kb2-host:
3、在主库执行select sys_switch_wal();检查发现,归档成功:
如下所示,在执行wal日志切换后,归档成功:
4、执行sys_rman备份测试:
如下图所示,备份成功:
四、总结
此次故障是因为,在执行sys_backup.sh init时,初始化备份,创建sys_rman.conf时参数配置错误,为什么会出现这种错误,还需要进一步分析具体原因。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
2022-09-22 KingbaseES V8R3集群运维案例之---备库状态‘down’修复