首页 > 数据库 > 数据库开发技术 > 达梦 DMDSC 集群之 DMCSSM 使用指南
大家好,这里是公众号 DBA学习之路,致力于分享数据库领域相关知识。
为了给大家提供一些技术交流的平台,目前已成立的技术交流群:
需要进群可以添加微信:Lucifer-0622,备注对应的群名即可。
DMDSC 集群的运行情况可以通过DMCSSM 监视器(Dameng Cluster Synchronization Services Monitor,DMCSSM)进行查看,也可以查询 DMDSC 相关的动态视图获取更详细的信息。DMCSSM 监视器支持一些控制命令,可以用来启动、关闭 DMDSC 集群,还可以进行手动控制节点故障处理和节点重加入。
配置了 DMCSS 的集群中,可配置 DMCSSM 对集群进行统一管理,可配置0~10 个 DMCSSM。各 DMCSSM 作用一样,相互独立,互不干扰。
DMCSS 功能说明:
show 命令用于查看各类信息。SET AUTO RESTART ON/SET AUTO RESTART OFF 命令,通知 DMCSS 打开或关闭对指定组的自动拉起功能,此功能和 DMCSS 的监控打开或关闭没有关系。OPEN FORCE 命令,在启动 ASM 或 DB 组时,如果组中某个节点发生硬件故障等原因导致一直无法启动,可执行此命令通知 DMCSS 将 ASM 组或 DB 组强制 OPEN,不再等待故障节点启动成功。EP STARTUP/EP STOP 命令,可以通知 DMCSS 启动/退出指定的 ASM 或 DB 组。DMCSSM 在任何机器上均可以启动,只要该台机器和 DMDSC 的真实机器网络是相通的,就可以监控 DMDSC 集群信息。搭建监视器,首先需要配置dmcssm.ini 文件。
DMCSSM 的配置文件名称为dmcssm.ini,所支持的配置项说明如下:
配置文件内容如下:
[dmdba@dsc01:/dmdata/DSC]$ cat dmcssm.ini
## 和 dmdcr_cfg.ini 中的 DCR_OGUID 保持一致
CSSM_OGUID = 795681
## 配置所有 CSS 的连接信息
## 和 dmdcr_cfg.ini 中 CSS 配置项的 DCR_EP_HOST 和 DCR_EP_PORT 保持一致
CSSM_CSS_IP = 5.5.5.1:12345
CSSM_CSS_IP = 5.5.5.2:12345
## 监视器日志文件存放路径
CSSM_LOG_PATH = /dm/log
## 每个日志文件最大 32M
CSSM_LOG_FILE_SIZE = 32
## 不限定日志文件总占用空间
CSSM_LOG_SPACE_LIMIT = 0
创建 DMCSSM 的日志存放路径。
mkdir -p /dm/log
启动 DMCSSM 集群监视器:
## 查看说明
[dmdba@dsc01:/home/dmdba]$ dmcssm help
version: 03134284294-20240919-243448-20119 Pack1
格式: ./dmcssm KEYWORD=value
例程: ./dmcssm [[INI_PATH] | [INI_PATH=/opt/dmdbms/data/DAMENG/dmcssm.ini] | help]
关键字 说明
----------------------------------------------------------------
INI_PATH ini文件路径
HELP 打印帮助信息
## 启动
[dmdba@dsc01:/home/dmdba]$ dmcssm INI_PATH=/dmdata/DSC/dmcssm.ini
[monitor] [2024-12-18 16:49:23:812] CSS MONITOR V8
[monitor] [2024-12-18 16:49:23:862] CSS MONITOR SYSTEM IS READY.
[monitor] [2024-12-18 16:49:23:888] Wait CSS Control Node choosed...
[monitor] [2024-12-18 16:49:25:212] Wait CSS Control Node choosed succeed.
DMCSSM 启动之后,可使用一系列命令在 DMCSSM 监视器中查看集群状态信息。
监视器提供一系列命令,支持集群的状态信息查看以及节点的故障处理,可输入help 命令,查看命令使用说明:
在 DMCSS 控制台输入help,显示帮助信息:
[dmdba@dsc01:/home/dmdba]$ dmcssm INI_PATH=/dmdata/DSC/dmcssm.ini
[monitor] [2024-12-16 13:27:36:769] CSS MONITOR V8
[monitor] [2024-12-16 13:27:36:796] CSS MONITOR SYSTEM IS READY.
[monitor] [2024-12-16 13:27:36:799] Wait CSS Control Node choosed...
[monitor] [2024-12-16 13:27:38:002] Wait CSS Control Node choosed succeed.
help
DMCSSM使用说明:
SHOW命令中可以通过指定group_name获取指定组的信息,如果没有指定,则显示所有组的信息
---------------------------------------------------------------------------------------------
1.help --显示帮助
2.show [group_name] --显示指定的组信息
3.show config --显示配置文件信息
4.show monitor --显示当前连接的监视器信息
5.set group_name auto restart on --打开指定组的自动拉起功能(只修改dmcss内存值)
6.set group_name auto restart off --关闭指定组的自动拉起功能(只修改dmcss内存值)
7.open force group_name --强制OPEN指定的ASM或DB组
8.ep startup group_name --启动指定的ASM或DB组
9.ep stop group_name --停止指定的ASM或DB组
10.ep halt group_name.ep_name --强制退出指定组的指定节点
11.extend node --扩展集群节点
12.ep crash group_name.ep_name --设定指定节点故障
13.check crash over group_name --检查指定组故障处理是否结束
14.exit --退出监视器
---------------------------------------------------------------------------------------------
在 DMCSS 控制台输入show 命令可以看到所监控的集群状态,可以指定的组信息,如果没有指定 group_name,则显示所有组信息。
group[name = GRP_CSS, seq = 0, type = CSS, Control Node = 0] 行显示的内容为:
ep 行显示的内容为:
show
monitor current time:2024-12-16 13:41:36, n_group:3
=================== group[name = GRP_CSS, seq = 0, type = CSS, Control Node = 0] ========================================
[CSS01] auto check = TRUE, global info:
[ASM01] auto restart = TRUE
[DSC01] auto restart = TRUE
[CSS02] auto check = TRUE, global info:
[ASM02] auto restart = TRUE
[DSC02] auto restart = TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2024-12-16 13:41:36 CSS01 0 12345 Control Node OPEN WORKING OK TRUE 13815 20305
2024-12-16 13:41:36 CSS02 1 12345 Normal Node OPEN WORKING OK TRUE 13918 20418
=================== group[name = GRP_ASM, seq = 1, type = ASM, Control Node = 0] ========================================
n_ok_ep = 2
ok_ep_arr(index, seqno):
(0, 0)
(1, 1)
sta = OPEN, sub_sta = STARTUP
break ep = NULL
recover ep = NULL
crash process over flag is TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2024-12-16 13:41:36 ASM01 0 12346 Control Node OPEN WORKING OK TRUE 21156 27650
2024-12-16 13:41:36 ASM02 1 12346 Normal Node OPEN WORKING OK TRUE 21233 27734
=================== group[name = GRP_DSC, seq = 2, type = DB, Control Node = 0] ========================================
n_ok_ep = 2
ok_ep_arr(index, seqno):
(0, 0)
(1, 1)
sta = OPEN, sub_sta = STARTUP
break ep = NULL
recover ep = NULL
crash process over flag is TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2024-12-16 13:41:36 DSC01 0 5236 Control Node OPEN WORKING OK TRUE 13930 20404
2024-12-16 13:41:36 DSC02 1 5236 Normal Node OPEN WORKING OK TRUE 350892 355722
==================================================================================================================
在 DMCSS 控制台输入show config,显示 DMDCR_CFG.INI 的配置信息,对于 DB 类型的节点,会比 CSS/ASM 节点多一项 DCR_EP_SEQNO 的显示值,如果原本的 ini 文件中没有手动配置,则显示的是自动分配的序列值。
show config
monitor current time:2024-12-16 13:52:51
==================================================================================================================
DCR_N_GRP = 3
DCR_VTD_PATH = /dev/asmdisk/dmvote01
DCR_OGUID =795681
[GRP]
DCR_GRP_TYPE = CSS
DCR_GRP_NAME = GRP_CSS
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_CSS]
DCR_EP_NAME = CSS01
DCR_EP_HOST = 5.5.5.1
DCR_EP_PORT = 12345
[GRP_CSS]
DCR_EP_NAME = CSS02
DCR_EP_HOST = 5.5.5.2
DCR_EP_PORT = 12345
[GRP]
DCR_GRP_TYPE = ASM
DCR_GRP_NAME = GRP_ASM
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_ASM]
DCR_EP_NAME = ASM01
DCR_EP_HOST = 5.5.5.1
DCR_EP_PORT = 12346
DCR_EP_SHM_KEY = 78901
DCR_EP_SHM_SIZE = 512
DCR_EP_ASM_LOAD_PATH = /dev/asmdisk
[GRP_ASM]
DCR_EP_NAME = ASM02
DCR_EP_HOST = 5.5.5.2
DCR_EP_PORT = 12346
DCR_EP_SHM_KEY = 78902
DCR_EP_SHM_SIZE = 512
DCR_EP_ASM_LOAD_PATH = /dev/asmdisk
[GRP]
DCR_GRP_TYPE = DB
DCR_GRP_NAME = GRP_DSC
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_DSC]
DCR_EP_SEQNO = 0
DCR_EP_NAME = DSC01
DCR_EP_PORT = 5236
DCR_CHECK_PORT = 12347
[GRP_DSC]
DCR_EP_SEQNO = 1
DCR_EP_NAME = DSC02
DCR_EP_PORT = 5236
DCR_CHECK_PORT = 12347
==================================================================================================================
在 DMCSS 控制台输入show monitor 显示当前连接到主 CSS 的所有监视器信息,返回的信息中,第一行为当前执行命令的监视器的连接信息。
show monitor
==================================================
Get monitor connect info from css(seqno:0, name:CSS01).
The first line is self connect info.
CONN_TIME MID MON_IP FROM_NAME
2024-12-16 13:41:30 1734327690 ::ffff:5.5.5.1 dmcssm
2024-12-16 13:28:55 1734326935 ::ffff:5.5.5.2 dmcssm
==================================================
在数据守护环境中,守护监视器 dmmonitor 的部分命令(启动/停止/强杀实例)最终是由 dmcss 执行的,守护进程 dmwatcher 在命令执行中充当了 dmcssm 的角色,守护进程通知 dmcss 执行完成后,再将执行结果返回给守护监视器。因此 dmcss 上会有 dmwatcher 的连接信息,show monitor 命令也会显示 dmwatcher 的连接信息,可以根据 from_name 字段值进行区分。
打开/关闭指定组的自动拉起功能。可借助show css 命令查看每个节点的自动拉起标记,每个 css 只能控制和自己的 DMDCR.INI 中配置的 DMDCR_SEQNO 相同节点的自动拉起。
## 查看当前组是否开启自动拉起
show grp_css
monitor current time:2024-12-16 17:28:51
=================== group[name = grp_css, seq = 0, type = CSS, Control Node = 0] ========================================
[CSS01] auto check = TRUE, global info:
[ASM01] auto restart = TRUE
[DSC01] auto restart = TRUE
[CSS02] auto check = TRUE, global info:
[ASM02] auto restart = TRUE
[DSC02] auto restart = TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2024-12-16 17:28:50 CSS01 0 12345 Control Node OPEN WORKING OK TRUE 13815 33425
2024-12-16 17:28:50 CSS02 1 12345 Normal Node OPEN WORKING OK TRUE 13918 33516
==================================================================================================================
## 关闭 DB 自动拉起
set grp_dsc auto restart off
[monitor] [2024-12-16 17:20:07:035] 通知CSS(seqno:0)关闭节点(DSC01)的自动拉起功能
[monitor] [2024-12-16 17:20:07:338] 通知CSS(seqno:0)关闭节点(DSC01)的自动拉起功能成功
[monitor] [2024-12-16 17:20:07:339] 通知CSS(seqno:1)关闭节点(DSC02)的自动拉起功能
[monitor] [2024-12-16 17:20:07:642] 通知CSS(seqno:1)关闭节点(DSC02)的自动拉起功能成功
[monitor] [2024-12-16 17:20:07:643] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-16 17:20:08:496] 清理CSS(0)请求成功
[monitor] [2024-12-16 17:20:08:849] 清理CSS(1)请求成功
[monitor] [2024-12-16 17:20:08:852] 关闭CSS自动拉起功能成功
## 查看 DB 自动拉起状态
show
monitor current time:2024-12-16 17:20:16, n_group:3
=================== group[name = GRP_CSS, seq = 0, type = CSS, Control Node = 0] ========================================
[CSS01] auto check = TRUE, global info:
[ASM01] auto restart = TRUE
[DSC01] auto restart = FALSE
[CSS02] auto check = TRUE, global info:
[ASM02] auto restart = TRUE
[DSC02] auto restart = FALSE
## 开启 DB 自动拉起
set grp_dsc auto restart on
[monitor] [2024-12-16 17:21:02:742] 通知CSS(seqno:0)打开节点(DSC01)的自动拉起功能
[monitor] [2024-12-16 17:21:03:094] 通知CSS(seqno:0)打开节点(DSC01)的自动拉起功能成功
[monitor] [2024-12-16 17:21:03:097] 通知CSS(seqno:1)打开节点(DSC02)的自动拉起功能
[monitor] [2024-12-16 17:21:03:399] 通知CSS(seqno:1)打开节点(DSC02)的自动拉起功能成功
[monitor] [2024-12-16 17:21:03:400] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-16 17:21:04:254] 清理CSS(0)请求成功
[monitor] [2024-12-16 17:21:05:661] 清理CSS(1)请求成功
[monitor] [2024-12-16 17:21:05:662] 打开CSS自动拉起功能成功
在启动 ASM 或 DB 组时,如果某个节点故障一直无法启动,可借助此命令将 ASM 或 DB 组强制 OPEN。此命令需要发送到主 CSS 执行,并且主 CSS 的监控需要处于打开状态,如果主 CSS 故障或尚未选出,则命令执行失败。
open force GRP_DSC
通知 CSS 启动/关闭指定的 ASM 或 DB 组,如果 CSS 已经打开了指定组的自动拉起功能,则启动命令不允许执行,需要等待 CSS 自动检测故障并执行拉起操作。
每个 CSS 只负责拉起和自己的 dmdcr.ini 中配置的 DMDCR_SEQNO 相同的 ASM 或 DB 节点,因此需要所有 CSS 都处于活动状态,否则只通知当前活动的 CSS 自动拉起相对应的节点。
## 关闭 DB
ep stop GRP_DSC
[monitor] [2024-12-16 17:10:41:449] 通知CSS(seqno:0)关闭节点(DSC01)的自动拉起功能
[monitor] [2024-12-16 17:10:41:652] 通知CSS(seqno:0)关闭节点(DSC01)的自动拉起功能成功
[monitor] [2024-12-16 17:10:41:653] 通知CSS(seqno:1)关闭节点(DSC02)的自动拉起功能
[monitor] [2024-12-16 17:10:41:855] 通知CSS(seqno:1)关闭节点(DSC02)的自动拉起功能成功
[monitor] [2024-12-16 17:10:41:856] 关闭CSS自动拉起功能成功
[monitor] [2024-12-16 17:10:41:858] 通知CSS(seqno:0)执行EP STOP(GRP_DSC)
[monitor] [2024-12-16 17:10:51:071] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-16 17:10:53:227] 清理CSS(0)请求成功
[monitor] [2024-12-16 17:10:53:280] 清理CSS(1)请求成功
[monitor] [2024-12-16 17:10:53:281] 命令EP STOP GRP_DSC执行成功
## 查看 DB 状态
show GRP_DSC
monitor current time:2024-12-16 17:12:22
=================== group[name = grp_dsc, seq = 2, type = DB, Control Node = 255] ========================================
n_ok_ep = 2
ok_ep_arr(index, seqno):
(0, 0)
(1, 1)
sta = OPEN, sub_sta = STARTUP
break ep = NULL
recover ep = NULL
crash process over flag is FALSE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2024-12-16 17:12:21 DSC01 0 5236 Normal Node SHUTDOWN SHUTDOWN OK FALSE 13930 32647
2024-12-16 17:12:21 DSC02 1 5236 Normal Node SHUTDOWN SHUTDOWN OK FALSE 350892 367969
==================================================================================================================
## 启动 DB
ep startup grp_dsc
[monitor] [2024-12-16 17:13:49:260] 通知CSS(seqno:0)执行EP STARTUP(DSC01)
[monitor] [2024-12-16 17:14:03:383] 通知CSS(seqno:0)执行EP STARTUP(DSC01)成功
[monitor] [2024-12-16 17:14:03:385] 通知CSS(seqno:1)执行EP STARTUP(DSC02)
[monitor] [2024-12-16 17:14:18:016] 通知CSS(seqno:1)执行EP STARTUP(DSC02)成功
[monitor] [2024-12-16 17:14:18:021] 通知CSS(seqno:0)打开节点(DSC01)的自动拉起功能
[monitor] [2024-12-16 17:14:18:781] 通知CSS(seqno:0)打开节点(DSC01)的自动拉起功能成功
[monitor] [2024-12-16 17:14:18:783] 通知CSS(seqno:1)打开节点(DSC02)的自动拉起功能
[monitor] [2024-12-16 17:14:19:135] 通知CSS(seqno:1)打开节点(DSC02)的自动拉起功能成功
[monitor] [2024-12-16 17:14:19:137] 打开CSS自动拉起功能成功
[monitor] [2024-12-16 17:14:19:138] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-16 17:14:19:589] 清理CSS(0)请求成功
[monitor] [2024-12-16 17:14:20:394] 清理CSS(1)请求成功
[monitor] [2024-12-16 17:14:20:395] 命令EP STARTUP GRP_DSC执行成功
[CSS01] [2024-12-16 17:14:20:154] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
[CSS01] [2024-12-16 17:14:20:573] [DB]: 设置命令[EP START], 目标站点 DSC01[0], 命令序号[73]
[CSS01] [2024-12-16 17:14:21:605] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-16 17:14:21:744] [DB]: 设置命令[EP START], 目标站点 DSC02[1], 命令序号[75]
[CSS01] [2024-12-16 17:14:22:217] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
[CSS01] [2024-12-16 17:14:22:243] [DB]: 设置命令[EP START2], 目标站点 DSC01[0], 命令序号[78]
[CSS01] [2024-12-16 17:14:24:423] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-16 17:14:24:555] [DB]: 设置命令[EP START2], 目标站点 DSC02[1], 命令序号[80]
[CSS01] [2024-12-16 17:14:25:511] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
[CSS01] [2024-12-16 17:14:25:640] [DB]: 设置命令[EP OPEN], 目标站点 DSC01[0], 命令序号[83]
[CSS01] [2024-12-16 17:14:25:812] [DB]: 设置命令[EP OPEN], 目标站点 DSC02[1], 命令序号[84]
[CSS01] [2024-12-16 17:14:26:250] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-16 17:14:26:479] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
[CSS01] [2024-12-16 17:14:26:792] [DB]: 设置命令[EP REAL OPEN], 目标站点 DSC01[0], 命令序号[86]
[CSS01] [2024-12-16 17:14:27:108] [DB]: 设置命令[EP REAL OPEN], 目标站点 DSC02[1], 命令序号[87]
[CSS01] [2024-12-16 17:14:28:109] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-16 17:14:28:379] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
## 查看 DB 状态
show grp_dsc
monitor current time:2024-12-16 17:16:57
=================== group[name = grp_dsc, seq = 2, type = DB, Control Node = 0] ========================================
n_ok_ep = 2
ok_ep_arr(index, seqno):
(0, 0)
(1, 1)
sta = OPEN, sub_sta = STARTUP
break ep = NULL
recover ep = NULL
crash process over flag is TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2024-12-16 17:16:57 DSC01 0 5236 Control Node OPEN WORKING OK TRUE 3899323 3899495
2024-12-16 17:16:57 DSC02 1 5236 Normal Node OPEN WORKING OK TRUE 3902670 3902828
==================================================================================================================
只有在 ASM 组正常启动到 OPEN 状态,并且所有活动的 ASM 节点都处于 OPEN 状态时,才允许启动 DB 组,否则执行 DB 组的启动命令会报错,CSS 自动拉起 DB 组时也需要满足此条件。在命令执行前,如果 CSS 对指定组的自动拉起功能是关闭的,在节点拉起成功后,会打开对指定组的自动拉起功能。
在退出 ASM 组时,需要保证 DB 组已经退出,否则会报错处理。在命令执行前,如果 CSS 对指定组的自动拉起功能是打开的,则会先通知 CSS 关闭对指定组的自动拉起功能,再通知指定组退出,避免命令执行成功后节点再次被自动拉起。
强制退出指定组的指定 EP。适用于下述场景:
某个 ASM 或 DB 集群节点故障,CSS 的心跳容错时间DCR_GRP_DSKCHK_CNT 配置值很大,在容错时间内,CSS 不会调整故障节点的 active 标记,一直是 TRUE,CSS 认为故障 EP 仍然处于活动状态,不会自动执行故障处理,并且不允许手动执行故障处理。
另外,执行EP STARTUP 或EP STOP 命令时,会误认为故障 EP 仍然处于活动状态,导致执行结果与预期不符。此时可以通过执行EP HALT 命令,通知 CSS 再次 HALT 故障 EP,确认 EP 已经被 HALT 后,CSS 会及时调整 active 标记为 FALSE,在此之后,对自动/手动故障处理,EP STARTUP/EP STOP 命令都可以正常执行。
需要强制 HALT 某个正在运行的 ASM 或 DB 节点,也可以通过此命令完成。
ep halt grp_dsc.DSC02
[monitor] [2024-12-18 10:04:27:101] 通知CSS(CSS01, seqno:0)执行EP HALT GRP_DSC.DSC02
[monitor] [2024-12-18 10:04:28:738] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-18 10:04:30:648] 清理CSS(0)请求成功
[monitor] [2024-12-18 10:04:30:701] 清理CSS(1)请求成功
[monitor] [2024-12-18 10:04:30:729] 命令EP HALT GRP_DSC.DSC02执行成功
[CSS01] [2024-12-18 10:04:30:457] [DB]: 设置命令[EP_CRASH], 目标站点 DSC01[0], 命令序号[92]
[CSS01] [2024-12-18 10:04:42:453] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-18 10:04:42:458] [DB]: 命令[EP_CRASH]处理结束
[CSS01] [2024-12-18 10:04:42:618] [DB]: 设置命令[CMD CLEAR], 目标站点 DSC01[0], 命令序号[95]
[CSS01] [2024-12-18 10:04:42:893] [CSS]: 设置命令[CONFIG VIP], 目标站点 CSS02[1], 命令序号[4]
[CSS01] [2024-12-18 10:04:43:441] [DB]: 设置命令[CONFIG VIP], 目标站点 DSC01[0], 命令序号[100]
[CSS01] [2024-12-18 10:04:44:580] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-18 10:04:44:745] [DB]: 命令[CONFIG VIP]处理结束
[CSS01] [2024-12-18 10:04:45:929] [DB]: 上次故障处理已完成,允许故障ep重加入
## 查看 DB 状态
show grp_dsc
monitor current time:2024-12-18 10:05:28
=================== group[name = grp_dsc, seq = 2, type = DB, Control Node = 0] ========================================
n_ok_ep = 1
ok_ep_arr(index, seqno):
(0, 0)
sta = OPEN, sub_sta = STARTUP
break ep = NULL
recover ep = NULL
crash process over flag is TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2024-12-18 10:05:28 DSC01 0 5236 Control Node OPEN WORKING OK TRUE 3899323 4044687
2024-12-18 10:05:28 DSC02 1 5236 Normal Node OPEN SYSHALT ERROR FALSE 3902670 4047981
==================================================================================================================
## 先关闭所有 DB
ep stop grp_dsc
[monitor] [2024-12-18 10:18:46:035] 通知CSS(seqno:0)关闭节点(DSC01)的自动拉起功能
[monitor] [2024-12-18 10:18:46:187] 通知CSS(seqno:0)关闭节点(DSC01)的自动拉起功能成功
[monitor] [2024-12-18 10:18:46:203] 通知CSS(seqno:1)关闭节点(DSC02)的自动拉起功能
[monitor] [2024-12-18 10:18:46:405] 通知CSS(seqno:1)关闭节点(DSC02)的自动拉起功能成功
[monitor] [2024-12-18 10:18:46:406] 关闭CSS自动拉起功能成功
[monitor] [2024-12-18 10:18:46:407] 通知CSS(seqno:0)执行EP STOP(GRP_DSC)
[monitor] [2024-12-18 10:18:51:717] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-18 10:18:52:672] 清理CSS(0)请求成功
[monitor] [2024-12-18 10:18:52:737] 清理CSS(1)请求成功
[monitor] [2024-12-18 10:18:52:739] 命令EP STOP GRP_DSC执行成功
## 执行 ep startup 可以再次启动
ep startup grp_dsc
[monitor] [2024-12-18 10:07:32:089] 通知CSS(seqno:0)执行EP STARTUP(DSC01)
[monitor] [2024-12-18 10:07:45:470] 通知CSS(seqno:0)执行EP STARTUP(DSC01)成功
[monitor] [2024-12-18 10:07:45:507] 通知CSS(seqno:1)执行EP STARTUP(DSC02)
[monitor] [2024-12-18 10:08:02:055] 通知CSS(seqno:1)执行EP STARTUP(DSC02)成功
[monitor] [2024-12-18 10:08:02:073] 通知CSS(seqno:0)打开节点(DSC01)的自动拉起功能
[monitor] [2024-12-18 10:08:02:276] 通知CSS(seqno:0)打开节点(DSC01)的自动拉起功能成功
[monitor] [2024-12-18 10:08:02:277] 通知CSS(seqno:1)打开节点(DSC02)的自动拉起功能
[monitor] [2024-12-18 10:08:02:579] 通知CSS(seqno:1)打开节点(DSC02)的自动拉起功能成功
[monitor] [2024-12-18 10:08:02:590] 打开CSS自动拉起功能成功
[monitor] [2024-12-18 10:08:02:591] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-18 10:08:03:695] 清理CSS(0)请求成功
[monitor] [2024-12-18 10:08:03:807] 清理CSS(1)请求成功
[monitor] [2024-12-18 10:08:03:809] 命令EP STARTUP GRP_DSC执行成功
[CSS01] [2024-12-18 10:08:03:518] [DB]: 设置命令[DCR_LOAD], 目标站点 DSC02[1], 命令序号[109]
[CSS01] [2024-12-18 10:08:03:830] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-18 10:08:03:906] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
[CSS01] [2024-12-18 10:08:04:068] [DB]: 设置命令[EP START], 目标站点 DSC01[0], 命令序号[111]
[CSS01] [2024-12-18 10:08:12:435] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-18 10:08:12:577] [DB]: 设置命令[EP START], 目标站点 DSC02[1], 命令序号[113]
[CSS01] [2024-12-18 10:08:12:837] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
[CSS01] [2024-12-18 10:08:12:861] [DB]: 设置命令[EP START2], 目标站点 DSC01[0], 命令序号[116]
[CSS01] [2024-12-18 10:08:14:717] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-18 10:08:14:857] [DB]: 设置命令[EP START2], 目标站点 DSC02[1], 命令序号[118]
[CSS01] [2024-12-18 10:08:15:684] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
[CSS01] [2024-12-18 10:08:15:813] [DB]: 设置命令[EP OPEN], 目标站点 DSC01[0], 命令序号[121]
[CSS01] [2024-12-18 10:08:15:839] [DB]: 设置命令[EP OPEN], 目标站点 DSC02[1], 命令序号[122]
[CSS01] [2024-12-18 10:08:16:151] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-18 10:08:16:164] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
[CSS01] [2024-12-18 10:08:16:300] [DB]: 设置命令[EP REAL OPEN], 目标站点 DSC01[0], 命令序号[124]
[CSS01] [2024-12-18 10:08:16:435] [DB]: 设置命令[EP REAL OPEN], 目标站点 DSC02[1], 命令序号[125]
[CSS01] [2024-12-18 10:08:17:034] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-18 10:08:17:184] [DB]: 设置命令[NONE], 目标站点 DSC02[1], 命令序号[0]
[CSS01] [2024-12-18 10:08:18:399] [DB]: 上次故障处理未真正完成,不允许故障ep重加入
show grp_dsc
monitor current time:2024-12-18 10:09:39
=================== group[name = grp_dsc, seq = 2, type = DB, Control Node = 0] ========================================
n_ok_ep = 2
ok_ep_arr(index, seqno):
(0, 0)
(1, 1)
sta = OPEN, sub_sta = STARTUP
break ep = NULL
recover ep = NULL
crash process over flag is TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2024-12-18 10:09:38 DSC01 0 5236 Control Node OPEN WORKING OK TRUE 34076905 34077011
2024-12-18 10:09:38 DSC02 1 5236 Normal Node OPEN WORKING OK TRUE 34080259 34080356
==================================================================================================================
DMDSC 集群联机增加节点时使用。程序会通知所有实例(CSS/ASMSVR/dmserver)更新 dcr 信息。
使用show 命令能看到新增节点信息,新增ASMSVR/dmserver 为 ERROR 状态。
手动指定节点故障,节点故障后,css 只有在DCR_GRP_DSKCHK_CNT 配置的时间过后才会判定实例故障,开始故障处理流程。用户如果明确知道实例已经故障,可以收到执行此命令,CSS 可以立即开始故障处理流程。
## 强制关闭节点 2 DB
ep halt grp_dsc.dsc02
[monitor] [2024-12-18 10:14:07:230] 通知CSS(CSS01, seqno:0)执行EP HALT GRP_DSC.DSC02
[monitor] [2024-12-18 10:14:08:537] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-18 10:14:09:492] 清理CSS(0)请求成功
[monitor] [2024-12-18 10:14:09:643] 清理CSS(1)请求成功
[monitor] [2024-12-18 10:14:09:645] 命令EP HALT GRP_DSC.DSC02执行成功
[CSS01] [2024-12-18 10:14:27:631] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-18 10:14:27:640] [DB]: 命令[EP_CRASH]处理结束
[CSS01] [2024-12-18 10:14:27:791] [DB]: 设置命令[CMD CLEAR], 目标站点 DSC01[0], 命令序号[133]
[CSS01] [2024-12-18 10:14:28:034] [CSS]: 设置命令[CONFIG VIP], 目标站点 CSS02[1], 命令序号[5]
[CSS01] [2024-12-18 10:14:28:541] [DB]: 设置命令[CONFIG VIP], 目标站点 DSC01[0], 命令序号[138]
[CSS01] [2024-12-18 10:14:28:779] [DB]: 设置命令[NONE], 目标站点 DSC01[0], 命令序号[0]
[CSS01] [2024-12-18 10:14:28:786] [DB]: 命令[CONFIG VIP]处理结束
[CSS01] [2024-12-18 10:14:29:940] [DB]: 上次故障处理已完成,允许故障ep重加入
## 指定节点 2 DB 故障
ep crash grp_dsc.dsc02
[monitor] [2024-12-18 10:15:38:419] 通知CSS(CSS01, seqno:0)执行EP CRASH GRP_DSC DSC02
[monitor] [2024-12-18 10:15:38:640] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-18 10:15:39:795] 清理CSS(0)请求成功
[monitor] [2024-12-18 10:15:40:699] 清理CSS(1)请求成功
[monitor] [2024-12-18 10:15:40:704] 通知CSS(CSS01, seqno:0)执行EP CRASH GRP_DSC DSC02成功,请等待CSS处理完成
show grp_dsc
monitor current time:2024-12-18 10:16:37
=================== group[name = grp_dsc, seq = 2, type = DB, Control Node = 0] ========================================
n_ok_ep = 1
ok_ep_arr(index, seqno):
(0, 0)
sta = OPEN, sub_sta = STARTUP
break ep = NULL
recover ep = NULL
crash process over flag is TRUE
ep: css_time inst_name seqno port mode inst_status vtd_status is_ok active guid ts
2024-12-18 10:16:36 DSC01 0 5236 Control Node OPEN WORKING OK TRUE 34076905 34077411
2024-12-18 10:16:36 DSC02 1 5236 Normal Node OPEN SYSHALT ERROR FALSE 34080259 34080624
DB 集群环境故障处理后,需要满足一定条件(控制节点重做 REDO 日志产生的数据页修改都已经刷盘完成),才允许故障节点重新加回集群环境。此命令用来显示 DB 集群环境故障处理是否真正结束。
check crash over grp_dsc
[monitor] [2024-12-18 10:17:45:089] 检查故障处理是否结束
[CSS01] [2024-12-18 10:17:45:111] Group crash process over flag: TRUE
[monitor] [2024-12-18 10:17:45:460] 通知当前活动的CSS执行清理操作
[monitor] [2024-12-18 10:17:46:565] 清理CSS(0)请求成功
[monitor] [2024-12-18 10:17:47:319] 清理CSS(1)请求成功
[monitor] [2024-12-18 10:17:47:340] 命令CHECK CRASH OVER grp_dsc执行成功
至此,DMCSSM 监视器的命令使用演示完成。
达梦十分建议使用 DMCSSM 来管理 ASM 和 DB,十分安全可靠,可视化更加清晰!
如果有遗漏或者不足的地方,欢迎评论区补充或者投稿,感谢阅读!
达梦数据库安装最详细教程
一招教你学会达梦数据库的免密登录
一文讲透达梦数据库的大小写敏感
效率翻倍!达梦数据库 disql 使用技巧全攻略
达梦数据库参数配置与一键优化指南
达梦 AWR 报告快速上手指南
达梦 DMDSC 共享存储集群介绍
官方认证:达梦共享集群 DMDSC 一键安装脚本
原文作者:DBA学习之路;如有侵权,请联系管理员删除。