KingbaseES V8R6集群运维案例--cluster模式备份sys_backup.sh init故障
案例说明:
通过脚本方式部署KingbaseES V8R6集群后,在‘cluster’模式备份,执行sys_backup.sh init时,出现“cannot contain // for ”log-path" option"错误,但是在‘single’模式下备份,无此错误。故障信息如下图所示:
适用版本:
KingbaseES V8R6
一、问题分析
KingbaseES V8R6集群在执行sys_backup.sh init执行备份初始化时,在‘single’和‘cluster’模式下,参数读取的的位置不同,single模式下,所有配置项的参数值都是从sys_backup.conf中读取,而cluster模式配置项的参数值部分是从repmgr.conf中读取。
1)single模式参数读取
如下图所示,single模式备份参数的读取:
2)cluster模式参数的读取
如下图所示,cluster模式需要从repmgr.conf中读取部分参数
执行sh -x sys_backup.sh init验证:
二、问题解决
1、查看repmgr.conf配置
如下图所示,在repmgr.conf的配置中出现’//'路径:
2、修改repmgr.conf配置文件
清理路径配置中‘//’。
3、重新执行sys_backup.sh init备份
如下图所示,系统提示未归档的wal日志超过1024个,初始化失败。
Tips:
对于KingbaseES V8R6在通过sys_backup.sh执行物理备份时,如果wal日志未归档超过最大值1024时,在执行sys_backup.sh init时,将会失败。
4、清理ready状态文件后备份
在sys_wal/archive_status目录下,将未归档的wal日志记载为.ready状态,已归档的为.done,如下图所示:
可以将*.ready状态文件清理,跳过wal未归档的检测,然后再执行备份的初始化。
三、总结
1、对于集群环境下,sys_backup.sh执行物理备份,需要读取到集群repmgr.conf的配置,在出现备份故障时,可以检查repmgr.conf的配置。
2、通过sh -x sysbackup.sh init,获取备份的详细过程,定位问题原因。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」