KingbaseES V8R6集群运维案例--cluster模式备份sys_backup.sh init故障

发布时间 2023-09-18 15:53:37作者: KINGBASE研究院
    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未归档的检测,然后再执行备份的初始化。

三、总结