达梦数据库-学习-59-DW主备集群启停

目录

一、环境信息

二、文档介绍

三、关闭集群

1、查看服务进程

2、切换到安装目录的bin

3、前台启动非确认监视器

4、登录监视器

5、展示集群状态

6、停止dmserver服务

7、查看服务进程

8、关闭dmwatcher服务

9、查看服务进程

10、退出监视器

11、关闭确认监视器

四、启动集群

1、启动dmserver服务

2、启动dmwatcher服务

3、后台启动确认监视器

4、前台启动非确认监视器

5、退出非确认监视器

6、disql登录主库


一、环境信息

|-------------|---------------|
| IP | 描述 |
| xx.xx.xx.10 | 主备集群主节点 |
| xx.xx.xx.11 | 主备集群备节点 + 监视器 |

二、文档介绍

本文介绍达梦主备DW集群的正常启动和关闭方式,实际操作时,请按照实际环境进行修改。

三、关闭集群

1、查看服务进程

登录监视器所在节点查看。

sql 复制代码
[dmdba@dw02:/opt/Dm8/bin]$ ps -ef|grep dmdba
dmdba      9019      1  0 13:54 ?        00:00:00 /opt/Dm8/bin/dmap dmap_ini=/opt/Dm8/bin/dmap.ini
dmdba     10614      1  1 13:55 ?        00:00:23 /opt/Dm8/bin/dmserver path=/opt/Dm8/dmdata/DAMENG/dm.ini -noconsole mount
dmdba     10895      1  0 13:55 ?        00:00:02 /opt/Dm8/bin/dmwatcher path=/opt/Dm8/dmdata/DAMENG/dmwatcher.ini -noconsole
root      12377   2722  0 14:16 pts/0    00:00:00 su - dmdba
dmdba     12378  12377  0 14:16 pts/0    00:00:00 -bash
dmdba     12479      1  0 14:16 pts/0    00:00:00 /opt/Dm8/bin/dmmonitor path=/opt/Dm8/dmdata/DAMENG/dmmonitor_GRP1.ini
dmdba     12533  12378  0 14:17 pts/0    00:00:00 ps -ef
dmdba     12534  12378  0 14:17 pts/0    00:00:00 grep --color=auto dmdba

观察到数据库的安装目录在:/opt/Dm8。

观察到数据库的数据存放目录在:/opt/Dm8/dmdata。

观察到监视器启动命令:/opt/Dm8/bin/dmmonitor path=/opt/Dm8/dmdata/DAMENG/dmmonitor_GRP1.ini

实际操作时,请按照实际环境进行修改。

2、切换到安装目录的bin

sql 复制代码
[dmdba@dw02:/opt/Dm8/bin]$ cd /opt/Dm8/bin

3、前台启动非确认监视器

如果没有非确认监视器请执行如下操作:

步骤1观察到的监视器配置文件:/opt/Dm8/dmdata/DAMENG/dmmonitor_GRP1.ini

在原目录复制一份新配置文件,将文件中的参数MON_DW_CONFIRM改为0。

之后执行如下命令即可。

sql 复制代码
[dmdba@dw02:/opt/Dm8/bin]$ /opt/Dm8/bin/dmmonitor path=/opt/Dm8/dmdata/DAMENG/dmmonitor_GRP1_bak.ini

[monitor]         2026-05-25 14:22:28:007: DMMONITOR[4.0] V8
[monitor]         2026-05-25 14:22:28:032: DMMONITOR[4.0] IS READY.

[monitor]         2026-05-25 14:22:28:039: 
#-----------------------------------------------------------------------------------------------#
GET MONITOR CONNECT INFO FROM DMWATCHER(GRP1_DW_02), THE FIRST LINE IS SELF INFO.

DW_CONN_TIME         MON_CONFIRM    MID            MON_IP                 MON_VERSION                                                     
2026-05-25 14:22:28  FALSE          1091409155     ::ffff:192.168.139.11  DMMONITOR[4.0] V8
                                              
#-----------------------------------------------------------------------------------------------#

[monitor]         2026-05-25 14:22:28:041: 收到守护进程(GRP1_DW_02)消息
                  WTIME                WSTATUS        INST_OK   INAME            ISTATUS     IMODE     RSTAT    N_OPEN   FLSN            CLSN            
                  2026-05-25 14:22:28  OPEN           OK        GRP1_DW_02       OPEN        STANDBY   NULL     3        50148           50148           

[monitor]         2026-05-25 14:22:29:039: 收到守护进程(GRP1_DW_01)消息
                  WTIME                WSTATUS        INST_OK   INAME            ISTATUS     IMODE     RSTAT    N_OPEN   FLSN            CLSN            
                  2026-05-25 14:22:29  OPEN           OK        GRP1_DW_01       OPEN        PRIMARY   VALID    3        50148           50148  

4、登录监视器

在监视器窗口执行LOGIN命令。

bash 复制代码
LOGIN 
用户名:SYSDBA
密码:
[monitor]         2026-05-25 14:25:16:093: 登录监视器成功!

5、展示集群状态

在监视器窗口执行SHOW命令。

bash 复制代码
SHOW
2026-05-25 14:32:00 
#================================================================================#
GROUP            OGUID       MON_CONFIRM     MODE            MPP_FLAG  
GRP1             797523      FALSE           MANUAL          FALSE     


<<DATABASE GLOBAL INFO:>>
DW_IP           MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT       DETACHED    AUTO_MODE_CHANGE  
192.168.139.10  5436         2026-05-25 14:32:00  GLOBAL    VALID     OPEN           GRP1_DW_01       OK        1     1     OPEN        PRIMARY   DSC_OPEN       REALTIME  VALID       FALSE       OFF               

EP INFO:
INST_IP         INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT       FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
192.168.139.10  5236       OK        GRP1_DW_01       OPEN        PRIMARY   0          0            REALTIME  VALID       3242            50148           3242            50148           NONE                  

<<DATABASE GLOBAL INFO:>>
DW_IP           MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT       DETACHED    AUTO_MODE_CHANGE  
192.168.139.11  5436         2026-05-25 14:31:59  GLOBAL    VALID     OPEN           GRP1_DW_02       OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID       FALSE       OFF               

EP INFO:
INST_IP         INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT       FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
192.168.139.11  5236       OK        GRP1_DW_02       OPEN        STANDBY   0          0            REALTIME  VALID       3242            50148           3242            50148           NONE                  

DATABASE(GRP1_DW_02) APPLY INFO FROM (GRP1_DW_01), REDOS_PARALLEL_NUM (1), WAIT_APPLY[FALSE]:
DSC_SEQNO[0], (RSEQ, SSEQ, KSEQ)[3242, 3242, 3242], (RLSN, SLSN, KLSN)[50148, 50148, 50148], N_TSK[0], TSK_MEM_USE[0] 


#================================================================================#

观察到组名为:GRP1

6、停止dmserver服务

在监视器窗口执行stop group GRP1命令。

bash 复制代码
stop group GRP1
[monitor]         2026-05-25 14:34:22:452: STOP实例GRP1_DW_01[PRIMARY, OPEN, ISTAT_SAME:TRUE]的守护进程
[monitor]         2026-05-25 14:34:22:458: 守护进程(GRP1_DW_01)状态切换 [OPEN-->SHUTDOWN]
[monitor]         2026-05-25 14:34:22:554: STOP实例GRP1_DW_01[PRIMARY, OPEN, ISTAT_SAME:TRUE]的守护进程成功

[monitor]         2026-05-25 14:34:22:556: STOP实例GRP1_DW_02[STANDBY, OPEN, ISTAT_SAME:TRUE]的守护进程
[monitor]         2026-05-25 14:34:22:558: 守护进程(GRP1_DW_02)状态切换 [OPEN-->SHUTDOWN]
[monitor]         2026-05-25 14:34:22:657: STOP实例GRP1_DW_02[STANDBY, OPEN, ISTAT_SAME:TRUE]的守护进程成功

[monitor]         2026-05-25 14:34:22:660: 通知实例(GRP1_DW_01)SHUTDOWN
[monitor]         2026-05-25 14:34:36:111: 通知实例(GRP1_DW_01)SHUTDOWN成功,请等待实例完全退出

[monitor]         2026-05-25 14:34:36:112: 通知实例(GRP1_DW_02)SHUTDOWN
[monitor]         2026-05-25 14:34:45:653: 通知实例(GRP1_DW_02)SHUTDOWN成功,请等待实例完全退出

[monitor]         2026-05-25 14:34:45:655: 通知组(GRP1)的守护进程执行清理操作
[monitor]         2026-05-25 14:34:45:717: 清理守护进程(GRP1_DW_01)请求成功
[monitor]         2026-05-25 14:34:45:769: 清理守护进程(GRP1_DW_02)请求成功
[monitor]         2026-05-25 14:34:45:771: 退出组(GRP1)中所有活动实例成功

7、查看服务进程

查看各节点dmserver服务是否正常关闭。

bash 复制代码
[root@dw02:/root]# ps -ef|grep dmdba |grep dmserver

没有返回结果,表示正常关闭dmserver服务。

8、关闭dmwatcher服务

先执行备节点,再执行主节点。

切换到安装目录的bin执行命令。

./DmW + Tab键 stop

bash 复制代码
[dmdba@dw02:/opt/Dm8/bin]$ ./DmWatcherServiceGRP1 stop
Stopping DmWatcherServiceGRP1:                             [ OK ]

9、查看服务进程

bash 复制代码
[dmdba@dw01:/opt/Dm8/bin]$ ps -ef | grep dmdba| grep -E 'dmserver|dmwatcher'

dmdba用户下没有其他进程,表示数据库正常关闭。

10、退出监视器

bash 复制代码
exit
[dmdba@dw02:/home/dmdba]$ 

11、关闭确认监视器

./DmM + Tab键 stop

举例如下:

sql 复制代码
[dmdba@dw02:/opt/Dm8/bin]$ ./DmMonitorServiceSun stop
Stopping DmMonitorServiceSun:                              [ OK ]

四、启动集群

1、启动dmserver服务

先启动主库dmserver,再启动所有备库dmserver。

./DmS + Tab键 start

bash 复制代码
[dmdba@dw01:/opt/Dm8/bin]$ ./DmServiceDAMENG start
Starting DmServiceDAMENG:                                  [ OK ]

2、启动dmwatcher服务

先启动主库dmwatcher,再启动所有备库dmwatcher。

./DmW + Tab键 start

bash 复制代码
[dmdba@dw02:/opt/Dm8/bin]$ ./DmWatcherServiceGRP1 start
Starting DmWatcherServiceGRP1:                             [ OK ]

3、后台启动确认监视器

切换到安装目录的bin执行命令:

./DmM + Tab键 start

bash 复制代码
[dmdba@dw02:/opt/Dm8/bin]$ ./DmMonitorServiceSun start
Starting DmMonitorServiceSun:                              [ OK ]

4、前台启动非确认监视器

如果没有非确认监视器请执行如下操作:

例如监视器配置文件:/opt/Dm8/dmdata/DAMENG/dmmonitor_GRP1.ini

在原目录复制一份新配置文件,将文件中的参数MON_DW_CONFIRM改为0。

之后执行如下命令即可。

bash 复制代码
[dmdba@dw02:/opt/Dm8/bin]$ /opt/Dm8/bin/dmmonitor path=/opt/Dm8/dmdata/DAMENG/dmmonitor_GRP1_bak.ini
SHOW

SHOW观察到所有节点的WSTATUS、ISTATUS都是OPEN状态、RSTAT为VALID,表示集群正常。

5、退出非确认监视器

bash 复制代码
exit
[dmdba@dw02:/home/dmdba]$

6、disql登录主库

bash 复制代码
[dmdba@dw01:/opt/Dm8/bin]$ ./disql SYSDBA/'"Dameng@123"'

服务器[LOCALHOST:5236]:处于主库打开状态
登录使用时间 : 22.022(ms)
密钥过期时间:2027-02-12
disql V8
15:04:46 SYSDBA@LOCALHOST:5236 SQL> 

主库显示打开状态,表示集群正常。