首页 > 数据库 > > 应急处理-主备机无法切换
gs_om -t switch -h plat1 -I DB1_2
Switching instances.
[GAUSS-53007] : Failed to switch cluster. Error:
Set output to terminal.
time="2019-05-31T15:28:36+08:00" level=error msg="The group group_1 is doing switchover"
time="2019-05-31T15:28:36+08:00" level=fatal msg="switchover datanode primary to DB(DB1_2) failed"

使用“Ctrl+C”中断switch过程后,执行同组内的主备切换会报错,需要进行故障处理,但切换其它组的主备,可正常执行切换命令。
在执行“gs_om -t switch -h hostname -I instname”命令的过程中,gs_om脚本会调用CM的主备切换命令,在切换过程中CM会给正在执行切换的DN所在组加锁。“Ctrl+C”会中断gs_om调用CM的过程,但此时CM已经成功下发切换命令,并且为指定切换DN所在的组加了锁,因此,再次执行同组内的DN主备切换时,会报错为该组DN正在执行切换。
etcdctl --cert="$ETCD_CERT_CLIENT_FILE" --key="$ETCD_KEY_CLIENT_FILE" --cacert="$ETCD_CA_CLIENT_FILE" --endpoints="$ETCD_ADDRESS" get /clusters/cmd_cm/arbitrate_db --prefix
/clusters/cmd_cm/arbitrate_db/group_1
group_1
etcdctl --cert="$ETCD_CERT_CLIENT_FILE" --key="$ETCD_KEY_CLIENT_FILE" --cacert="$ETCD_CA_CLIENT_FILE" --endpoints="$ETCD_ADDRESS" del /clusters/cmd_cm/arbitrate_db/group_1
1
gs_om -t switch -h plat1 -I DB1_1
Switching instances.
Successfully switched cluster.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3153952/ ,如需转载,请注明出处,否则将追究法律责任。