Print

【MVS】达梦DSC集群只开启单个节点无法启动

2026-06-05 发表

问题描述

 

境:达梦数据库 V8 DSC 集群,

问题现象:

  • 只启动一个节点,CSS 和 ASM 服务正常启动,但数据库实例启动失败,提示连接 ASM 失败。
  • 如两个节点都启动,则数据库实例可正常打开。

 

相关日志:

-- 查看系统状态

[root@dm195 ~]# systemctl status DmServiceDmdscServer.service

● DmServiceDmdscServer.service - DM Instance Service(DmServiceDmdscServer).

   Loaded: loaded (/usr/lib/systemd/system/DmServiceDmdscServer.service; enabled; vendor preset: disabled)

   Active: failed (Result: exit-code) since Fri 2026-06-05 16:40:18 CST; 2min 3s ago

  Process: 8789 ExecStart=/dm8/bin/DmServiceDmdscServer start (code=exited, status=1/FAILURE)

 

6月 05 16:39:42 dm195 DmServiceDmdscServer[8789]: failed to connnect dmasmtool(dmasmtoolm), please wait 5 seconds...

6月 05 16:39:48 dm195 DmServiceDmdscServer[8789]: failed to connnect dmasmtool(dmasmtoolm), please wait 5 seconds...

6月 05 16:39:53 dm195 DmServiceDmdscServer[8789]: failed to connnect dmasmtool(dmasmtoolm), please wait 5 seconds...

6月 05 16:39:58 dm195 DmServiceDmdscServer[8789]: failed to connnect dmasmtool(dmasmtoolm), please wait 5 seconds...

6月 05 16:40:03 dm195 DmServiceDmdscServer[8789]: failed to connnect dmasmtool(dmasmtoolm).

6月 05 16:40:18 dm195 DmServiceDmdscServer[8789]: [15B blob data]

6月 05 16:40:18 dm195 DmServiceDmdscServer[9465]: dmasm api init failed, [code: -11041]ASM connection exception

6月 05 16:40:18 dm195 systemd[1]: DmServiceDmdscServer.service: Control process exited, code=exited, status=1/FAILURE

6月 05 16:40:18 dm195 systemd[1]: DmServiceDmdscServer.service: Failed with result 'exit-code'.

6月 05 16:40:18 dm195 systemd[1]: Failed to start DM Instance Service(DmServiceDmdscServer)..

 

 

-- 查看相关日志

 

[root@dm195 log]# view dm_dmasmtoolm_202606.log

2026-06-05 16:39:58.467 [INFO] dmasmtoolm P0000009365 T0000000000000009365  DMASMTOOLM V8

2026-06-05 16:39:58.570 [ERROR] dmasmtoolm P0000009365 T0000000000000009365  Can't connect to DM server on '172.168.169.195' port(9349) errno(111)

2026-06-05 16:39:58.570 [ERROR] dmasmtoolm P0000009365 T0000000000000009365  [code : -11041] ASM连接异常

-----------

备注: 9349 为本地ASM0 的DCR_EP_PORT

 

 

 

# view dm_ASM0_202606.log

2026-06-05 16:23:11.210 [ERROR] dmasmsvr P0000008450 T0000000000000008752  Can't connect to DM server on '172.168.169.196' port(7236) errno(111)

-------------

备注:7236 为ASM MAL的端口

 

 

 

[root@dm195 log]# view dm_DMDSC0_202606.log

2026-06-05 16:40:03.761 [INFO] database P0000009412 T0000000000000009412  info get from dcr disk, asm_host = localhost, asm_port = 9349, global_dcr_ep_host = 172.168.169.195, global_dcr_ep_port = 5236, global_dcr_css_host = 172.168.169.195, global_dcr_css_port = 9341

2026-06-05 16:40:03.793 [ERROR] database P0000009412 T0000000000000009412  Can't connect to DM server on 'localhost' port(9349) errno(111)

2026-06-05 16:40:03.793 [ERROR] database P0000009412 T0000000000000009412  [EID:102]Connect to dmasmsvr(localhost:9349) failed, code:-11041, desc:ASM connection exception.

 

2026-06-05 16:40:03.794 [FATAL] database P0000009412 T0000000000000009412  [EID:305]dmasm api init failed, [code: -11041]ASM connection exception

 

解决方法

 

问题解决:
dmdcr.ini 中配置如下参数可解决此问题:

DMDCR_AUTO_OPEN_CHECK= 111

参数 DMDCR_AUTO_OPEN_CHECK 介绍:指定时间内如果节点实例未启动,DMCSS会自动将节点踢出集群环境,取值范围30s~4294967294s,单位S。不配置此参数时表示不启用此功能,即缺省为不启用

作用机制:DMDSC 集群环境下,只有当所有 OK 节点实例都启动时,整个集群环境才能启动。可能存在某些场景,部分 OK 节点无法正常启动,导致整个集群环境无法正常启动。指定参数 DMDCR_AUTO_OPEN_CHECK 后,如果超过指定时间节点实例还未启动,DMCSS 自动将未启动节点踢出集群环境,变为 ERROR 节点,之后其他活动 OK 节点可以正常启动。DMDSC 中至少一个 OK 节点启动后 DMCSS 才开始检查,所有 OK 节点都未启动情况下,DMCSS 不会主动踢出节点。