案例说明:

KingbaseES V8R3集群,执行kingbase_monitor.sh启动集群,出现“two master”节点的故障,启动集群失败;通过手工sys_ctl启动各节点数据库服务后,并手工重启kingbasecluster(restartcluster.sh)服务,集群运行正常。故障现象如下图所示:

手工启动数据库服务流复制正常:

手工启动kingbasecluster服务集群状态正常:

适用版本:

KingbaseES V8R3

一、问题分析:

1、分析kingbase_monitor.sh执行过程

执行:sh -x kingbase_monitor.sh start

Tips:

集群在启动时,通过读取recovery.conf文件判断主备库,对于主库没有recovery.conf(recovery.done)文件,而对于备库在data目录下有recovery.conf文件,可以通过读取到文件信息后,判断节点是否是备库。

---如上图所示,在集群启动过程中通过查询节点recovery.conf文件获取判断主备库状态信息(主库无recovery.conf),在连接227节点获取到主库的primary_conninfo信息时,返回信息为空,故判断227节点也是master节点。

如下图所示,是正常启动的返回信息:

2、远程执行ssh连接227节点查看recovery.conf文件信息

---如上图所示,返回的结果为空。

正常查询结果:(返回primary_conninfo信息)

3、检查227节点recovery.conf文件

检查发现227节点的data目录存储位置有问题。

三、问题解决

因为227节点是刚刚重做的备节点,data目录原来做了软链接,重做后忘记建立链接,导致227节点的data目录访问错误,重新建立软连接后,集群正常,问题解决。

最新文章

  1. 【Star CCM+实例】开发一个简单的计算流程.md
  2. Best Practices for Performance_3.Improving Layout Performance 优化布局
  3. debug命令简介
  4. Javascript中递归造成的堆栈溢出及解决方案
  5. Tomcat编码问题
  6. LoadRunner学习记录--安装遇到的问题一
  7. Ext.Ajax.request()方法和FormPanel.getForm().submit()方法,都返回success()方法的差异
  8. <转>ASP.NET学习笔记之MVC 3 数据验证 Model Validation 详解
  9. Oracle - 简单理解字符集
  10. 例题:填词-poj
  11. protobuf使用详解
  12. MySQL-mysql 8.0.11安装教程
  13. Java中的锁——Lock和synchronized
  14. Linux第十一节课学习笔记
  15. JavaScript面试技巧之数组的一些不low操作
  16. 插件使用一表单验证一validation
  17. 【java编程】使用System.getProperty方法,如何配置JVM系统属性
  18. 日志分析-mime统计
  19. UE4如何检测目标在锥形视野内
  20. 基于C++ Qt实现的红色警戒3修改器

热门文章

  1. 学习java Day1
  2. playwright 实现高亮、is_visible 等源码修改
  3. Gold Transportation
  4. Python批量绘制遥感影像数据的直方图
  5. 【深入浅出 Yarn 架构与实现】4-5 RM 行为探究 - 启动 ApplicationMaster
  6. Java的注释和标识符
  7. wordpress宕机原因及处理方法
  8. Linux route命令修改默认路由优先级
  9. ubuntu22.04 git升级
  10. SVN的安装和使用手册2