【DM8】DSC故障处理与故障自动重连

1 DSC故障处理

  • DMCSS 一旦监控到dmserver发生故障,会马上启动故障处理,各节点dmserver收到故障处理命令后,启动故障处理流程。

  • 故障处理机制下,一旦产生节点故障, 登录到故障节点的所有连接将会断开。所有未提交事务将强制回滚。

  • 活动节点上的用户请求可继续执行,一旦产生节点间信息传递,当前操作会被挂起。

  • DMDSC 故障处理分为两个阶段;
    (1) 第一阶段由所有活动节点共同参与,进行全局的信息收集、重构;
    (2) 第二阶段由控制节点执行,将故障节点的活动事务回滚、并 PURGE 故障节点已提交事务的修改。

  • 在第一阶段执行期间,数据库实例不提供数据库服务,所有用户请求将被挂起。在第二阶段操作之前,会唤醒所有活动节点,正常提供数据库服务。

2 故障自动重连

2.1 配置服务名
  • 编辑dm_svc.conf文件。
    (Windows 下位于%SystemRoot%\system32目录,Linux下位于/etc 目录。)
    在这里插入图片描述
2.2 模拟故障自动重连
  • 首先两个节点分别 启动dmcss
    在这里插入图片描述
  • 首先两个节点分别 启动dmasmsvr
    在这里插入图片描述
  • 首先两个节点分别 启动dmserver
    在这里插入图片描述
    在这里插入图片描述
  • 使用刚才配置的服务名登录disql
    在这里插入图片描述
  • 确认当前连接到的节点实例
    在这里插入图片描述
  • 终止该实例进程 (尝试关闭DSC1实例,但由于DSC集群是两个实例访问一个数据库,因此DSC0实例也会被关闭,无法模拟单机故障)
    在这里插入图片描述
  • 在刚才disql会话中,再次查询当前连接节点实例。
    在这里插入图片描述
    tips:配置服务时,当dmdcr_cfg.ini与dm.ini中端口号不一致,需要按照dmdcr_cfg.ini文件中dcr_ep_port为准
    在这里插入图片描述