达梦数据库运维新策略:达梦数据库主备集群节点动态增加技巧

1.环境信息

1.1.环境信息概览

操作系统 CPU架构 数据库
麒麟V10 x86_64架构 03134284368-20250423-270902-20149 (2024Q1)

1.2.IP规划详情

主机名 服务IP 数据库名 实例名
OADB1 192.168.25.170 OADB OADB1
OADB2 192.168.25.171 OADB OADB2
OADB3 192.168.25.173 OADB OADB3(新增加节点)

2.动态增加实时备库

新加节点前提,需部署好一主一备环境,并且数据库状态运行正常。

达梦数据库运维新策略:达梦数据库主备集群节点动态增加技巧

2.1.备份数据库

1.对主库进行联机备份操作


BACKUP DATABASE BACKUPSET '/dmback/dbfull20251106';

备份完成后信息如下所示:


[dmdba@OADB2 ~]$ disql SYSDBA/Dameng123

服务器[LOCALHOST:5236]:处于主库打开状态
登录使用时间 : 7.287(ms)
disql V8
SQL> BACKUP DATABASE BACKUPSET '/dmback/dbfull20251106';
操作已执行
已用时间: 00:00:05.401. 执行号:801.
SQL>

2.初始化备机数据库


cd /home/dmdba/dmdbms/bin/

./dminit PATH=/dmdata EXTENT_SIZE=32 PAGE_SIZE=32 LOG_SIZE=2048  DB_NAME=OADB INSTANCE_NAME=OADB SYSDBA_PWD=Dameng123 SYSAUDITOR_PWD=Dameng123

3.还原恢复新增备库

拷贝生成的备份集目录 bakfull_20250318 到 25.173上/dmdata目录


[dmdba@OADB2 dmback]$ scp -r bakfull_20250318 dmdba@192.168.25.173:/dmdata
The authenticity of host '192.168.25.173 (192.168.25.173)' can't be established.
ECDSA key fingerprint is SHA256:xiUOmIG0qzMh3CxGli0ZoMpRYKol3LYyQDLrRpGAqEg.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.25.173' (ECDSA) to the list of known hosts.

Authorized users only. All activities may be monitored and reported.
dmdba@192.168.25.173's password: 
bakfull_20250318.bak                                                                                                  100%   28MB  67.0MB/s   00:00    
bakfull_20250318.meta                                                                                                 100%  110KB  61.1MB/s   00:00    
[dmdba@OADB2 dmback]$

2.2.使用备份恢复备库

使用 DMRMAN 工具脱机还原


./dmrman CTLSTMT="RESTORE DATABASE '/dmdata/OADB/dm.ini' FROM BACKUPSET '/dmdata/bakfull_20250318'"
./dmrman CTLSTMT="RECOVER DATABASE '/dmdata/OADB/dm.ini' FOR STANDBY FROM BACKUPSET '/dmdata/bakfull_20250318'"
./dmrman CTLSTMT="RECOVER DATABASE '/dmdata/OADB/dm.ini' UPDATE DB_MAGIC"

执行语句恢复后结果如下:


[dmdba@dmdrs-192-168-25-173 bin]$ ./dmrman CTLSTMT="RESTORE DATABASE '/dmdata/OADB/dm.ini' FROM BACKUPSET '/dmdata/bakfull_20250318'"
dmrman V8
RESTORE DATABASE '/dmdata/OADB/dm.ini' FROM BACKUPSET '/dmdata/bakfull_20250318'
file dm.key not found, use default license!
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:02][Remaining:00:00:00]                                 
restore successfully.
time used: 00:00:02.491
[dmdba@dmdrs-192-168-25-173 bin]$ ./dmrman CTLSTMT="RECOVER DATABASE '/dmdata/OADB/dm.ini' FOR STANDBY FROM BACKUPSET '/dmdata/bakfull_20250318'"
dmrman V8
RECOVER DATABASE '/dmdata/OADB/dm.ini' FOR STANDBY FROM BACKUPSET '/dmdata/bakfull_20250318'
file dm.key not found, use default license!
==============================Error Stack==============================
DM[603]:备份集[/dmdata/bakfull_20250318]备份过程中未产生日志
=======================================================================
recover successfully!
time used: 358.671(ms)
[dmdba@dmdrs-192-168-25-173 bin]$ ./dmrman CTLSTMT="RECOVER DATABASE '/dmdata/OADB/dm.ini' UPDATE DB_MAGIC"
dmrman V8
RECOVER DATABASE '/dmdata/OADB/dm.ini' UPDATE DB_MAGIC
file dm.key not found, use default license!
recover successfully!
time used: 00:00:01.083
[dmdba@dmdrs-192-168-25-173 bin]$

2.3.配置新备库

2.3.1.配置 dm.ini

在第三台机器上配置备库的实例名为 OADB3,dm.ini 参数修改如下:


##实例名,建议使用“组名_守护环境_序号”的命名方式,总长度不能超过16

INSTANCE_NAME = OADB3
DW_INACTIVE_INTERVAL = 60   ##接收守护进程消息超时时间
ALTER_MODE_STATUS = 0 			##不允许手工方式修改实例模式/状态/OGUID
ENABLE_OFFLINE_TS = 2 			##不允许备库OFFLINE表空间

MAL_INI = 1 					      ##打开MAL系统
ARCH_INI = 1 					      ##打开归档配置
RLOG_SEND_APPLY_MON = 64 		##统计最近64次的日志重演信息

使用 sed 键替换,替换前记得备份文件


# 使用sed逐个替换参数
sed -i "s|^s*INSTANCE_NAMEs*=.*|INSTANCE_NAME = OADB3|" /dmdata/OADB/dm.ini
sed -i "s|^s*DW_INACTIVE_INTERVALs*=.*|DW_INACTIVE_INTERVAL = 60|" /dmdata/OADB/dm.ini
sed -i "s|^s*ALTER_MODE_STATUSs*=.*|ALTER_MODE_STATUS = 0|" /dmdata/OADB/dm.ini
sed -i "s|^s*ENABLE_OFFLINE_TSs*=.*|ENABLE_OFFLINE_TS = 2|" /dmdata/OADB/dm.ini
sed -i "s|^s*MAL_INIs*=.*|MAL_INI = 1|" /dmdata/OADB/dm.ini
sed -i "s|^s*ARCH_INIs*=.*|ARCH_INI = 1|" /dmdata/OADB/dm.ini
sed -i "s|^s*RLOG_SEND_APPLY_MONs*=.*|RLOG_SEND_APPLY_MON = 64|" /dmdata/OADB/dm.ini

# 检查修改的参数
grep -n -E "^s*(INSTANCE_NAME|DW_INACTIVE_INTERVAL|ALTER_MODE_STATUS|ENABLE_OFFLINE_TS|MAL_INI|ARCH_INI)s*=" /dmdata/OADB/dm.ini

替换后信息如下所示:


[dmdba@dmdrs-192-168-25-173 dmdata]$ sed -i "s|^s*INSTANCE_NAMEs*=.*|INSTANCE_NAME = OADB3|" /dmdata/OADB/dm.ini
[dmdba@dmdrs-192-168-25-173 dmdata]$ sed -i "s|^s*DW_INACTIVE_INTERVALs*=.*|DW_INACTIVE_INTERVAL = 60|" /dmdata/OADB/dm.ini
[dmdba@dmdrs-192-168-25-173 dmdata]$ sed -i "s|^s*ALTER_MODE_STATUSs*=.*|ALTER_MODE_STATUS = 0|" /dmdata/OADB/dm.ini
[dmdba@dmdrs-192-168-25-173 dmdata]$ sed -i "s|^s*ENABLE_OFFLINE_TSs*=.*|ENABLE_OFFLINE_TS = 2|" /dmdata/OADB/dm.ini
[dmdba@dmdrs-192-168-25-173 dmdata]$ sed -i "s|^s*MAL_INIs*=.*|MAL_INI = 1|" /dmdata/OADB/dm.ini
[dmdba@dmdrs-192-168-25-173 dmdata]$ sed -i "s|^s*ARCH_INIs*=.*|ARCH_INI = 1|" /dmdata/OADB/dm.ini
[dmdba@dmdrs-192-168-25-173 dmdata]$ sed -i "s|^s*RLOG_SEND_APPLY_MONs*=.*|RLOG_SEND_APPLY_MON = 64|" /dmdata/OADB/dm.ini
[dmdba@dmdrs-192-168-25-173 dmdata]$ 
[dmdba@dmdrs-192-168-25-173 dmdata]$ grep -n -E "^s*(INSTANCE_NAME|DW_INACTIVE_INTERVAL|ALTER_MODE_STATUS|ENABLE_OFFLINE_TS|MAL_INI|ARCH_INI)s*=" /dmdata/OADB/dm.ini
15:INSTANCE_NAME = OADB3
709:DW_INACTIVE_INTERVAL = 60
711:ALTER_MODE_STATUS = 0
712:ENABLE_OFFLINE_TS = 2
729:MAL_INI = 1
730:ARCH_INI = 1
[dmdba@dmdrs-192-168-25-173 dmdata]$

2.3.2.配置 dmmal.ini

拷贝一份原系统dmmal.ini文件,在新节点编辑,并加上新的节点信息


MAL_CHECK_INTERVAL = 5 #MAL链路检测时间间隔
MAL_CONN_FAIL_INTERVAL = 15 #判定MAL链路断开的时间

[MAL_INST1]
MAL_INST_NAME = OADB1 #实例名,和dm.ini中的一致
MAL_HOST = 192.168.25.170 #MAL系统监听TCP连接的IP地址
MAL_PORT = 61141 #MAL系统监听TCP连接的端口
MAL_INST_HOST = 192.168.25.170 #实例的对外服务IP地址
MAL_DW_PORT = 52141 #实例对应的守护进程监听TCP连接的端口
MAL_INST_PORT = 5236 #实例的对外服务端口,和dm.ini中的PORT_NUM一致
MAL_INST_DW_PORT = 33141 #实例监听守护进程 TCP 连接的端口

[MAL_INST2]
MAL_INST_NAME = OADB2 #实例名,和dm.ini中的一致
MAL_HOST = 192.168.25.171 #MAL系统监听TCP连接的IP地址
MAL_PORT = 61141 #MAL系统监听TCP连接的端口
MAL_INST_HOST = 192.168.25.171 #实例的对外服务IP地址
MAL_DW_PORT = 52141 #实例对应的守护进程监听TCP连接的端口
MAL_INST_PORT = 5236 #实例的对外服务端口,和dm.ini中的PORT_NUM一致
MAL_INST_DW_PORT = 33141 #实例监听守护进程 TCP 连接的端口

[MAL_INST3]
MAL_INST_NAME = OADB3 #实例名,和dm.ini中的一致
MAL_HOST = 192.168.25.173 #MAL系统监听TCP连接的IP地址
MAL_PORT = 61141 #MAL系统监听TCP连接的端口
MAL_INST_HOST = 192.168.25.173 #实例的对外服务IP地址
MAL_DW_PORT = 52141 #实例对应的守护进程监听TCP连接的端口
MAL_INST_PORT = 5236 #实例的对外服务端口,和dm.ini中的PORT_NUM一致
MAL_INST_DW_PORT = 33141 #实例监听守护进程 TCP 连接的端口

2.3.3.配置 dmarch.ini

修改 dmarch.ini,配置本地归档和即时归档。


[ARCHIVE_LOCAL1]                 #归档标签类型
ARCH_TYPE     = LOCAL            #归档日志类型
ARCH_DEST     = /dmarch          #归档日志目录
ARCH_FILE_SIZE    = 2048         #单个日志文件大小MB
ARCH_SPACE_LIMIT  = 51200        #归档日志空间使用上限单位MB

[ARCHIVE_REALTIME1]  
ARCH_TYPE     = REALTIME  
ARCH_DEST     = OADB2

[ARCHIVE_REALTIME2]  
ARCH_TYPE     = REALTIME  
ARCH_DEST     = OADB1

2.3.4.配置 dmwatcher.ini

修改 dmwatcher.ini 配置守护进程,配置为全局守护类型,使用自动切换模式。


[GRP_DW] #守护组的名字,非实例名,主备一致
DW_TYPE = GLOBAL #实时守护类型
DW_MODE = AUTO #自动切换模式
DW_ERROR_TIME = 10 #远程守护进程故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 10 #本地实例故障认定时间
INST_OGUID = 20250311 #守护系统唯一OGUID值
INST_INI = /dmdata/OADB/dm.ini #dm.ini配置文件路径
INST_AUTO_RESTART = 1 #打开实例的自动拉起功能
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/DmServiceOADB start #命令行方式启动
RLOG_SEND_THRESHOLD = 0 #指定主库发送日志到备库的时间阀值,默认关闭
RLOG_APPLY_THRESHOLD = 0 #指定备库重演日志的时间阀值,默认关闭

2.3.5.启动备库

以 mount 方式启动备库


./dmserver /dmdata/OADB/dm.ini mount
或者
DmServiceOADB start mount

2.3.6.设置 OGUID及数据库模式

启动命令行工具 dIsql,登录备库设置 OGUID 值。


SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
sp_set_oguid(20250311);
alter database standby;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);

修改后信息如下所示:


[dmdba@dmdrs-192-168-25-173 OADB]$ disql SYSDBA/Dameng123

服务器[LOCALHOST:5236]:处于普通配置状态
登录使用时间 : 31.771(ms)
disql V8
SQL> 
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
DMSQL 过程已成功完成
已用时间: 21.443(毫秒). 执行号:1.
SQL> sp_set_oguid(20250311);
DMSQL 过程已成功完成
已用时间: 3.865(毫秒). 执行号:2.
SQL> alter database standby;
操作已执行
已用时间: 9.081(毫秒). 执行号:0.
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
DMSQL 过程已成功完成
已用时间: 19.193(毫秒). 执行号:3.
SQL>

2.4.动态添加 MAL 配置

本小节的步骤需要分别连接原系统中OADB1、OADB2 每个实例单独执行:

动态增加 MAL 中 MAL_INST3的相关配置信息:


SF_MAL_CONFIG(1,0);
SF_MAL_INST_ADD('MAL_INST3','OADB3','192.168.25.173',61141,'192.168.25.173',5236,52141,0,33141);
SF_MAL_CONFIG_APPLY();
SF_MAL_CONFIG(0,0);

注意:
SF_MAL_INST_ADD
的两个 IP 分别对应的是公网 IP 和私网 IP,没使用私网 IP使用同一个 IP 也是可以的。

节点1添加信息


SQL> SF_MAL_CONFIG(1,0);
SF_MAL_INST_ADD('MAL_INST3','OADB3','192.168.25.173',61141,'192.168.25.173',5236,52141,0,33141);
SF_MAL_CONFIG_APPLY();
SF_MAL_CONFIG(0,0);DMSQL 过程已成功完成
已用时间: 0.290(毫秒). 执行号:1409.
SQL> DMSQL 过程已成功完成
已用时间: 1.910(毫秒). 执行号:1410.
SQL> DMSQL 过程已成功完成
已用时间: 0.474(毫秒). 执行号:1411.
SQL> 
DMSQL 过程已成功完成
已用时间: 0.265(毫秒). 执行号:1412.
SQL> ALTER DATABASE ADD ARCHIVELOG 'DEST=OADB3,TYPE=REALTIME';
操作已执行
已用时间: 1.611(毫秒). 执行号:0.
SQL>

节点 2 添加信息


[dmdba@OADB1:/dmdata/OADB]$ disql SYSDBA/Dameng123

服务器[LOCALHOST:5236]:处于备库配置状态
登录使用时间 : 3.053(ms)
disql V8
SQL> SF_MAL_CONFIG(1,0);
SF_MAL_INST_ADD('MAL_INST3','OADB3','192.168.25.173',61141,'192.168.25.173',5236,52141,0,33141);
SF_MAL_CONFIG_APPLY();
SF_MAL_CONFIG(0,0);DMSQL 过程已成功完成
已用时间: 0.627(毫秒). 执行号:1801.
SQL> DMSQL 过程已成功完成
已用时间: 0.747(毫秒). 执行号:1802.
SQL> DMSQL 过程已成功完成
已用时间: 0.703(毫秒). 执行号:1803.
SQL> 
DMSQL 过程已成功完成
已用时间: 0.595(毫秒). 执行号:1804.
SQL>

2.5.动态添加归档配置

动态添加归档配置的操作步骤如下:

● 关闭原系统中所有实例的守护进程和监视器

由于动态添加归档要求数据库必须处于 MOUNT 状态,而在守护进程(dmwatcher)处于活动状态时,系统不允许用户手动修改数据库模式与状态。为确保操作顺利进行,防止手动将数据库切换至 MOUNT 状态后又被守护进程自动重新打开(Open),并同步更新监视器(dmmonitor)配置,需要预先关闭相关进程。操作时应遵循以下顺序:

a. 停止监视器(dmmonitor)。

b. 停止各备库实例的守护进程。

c. 停止主库实例的守护进程。

d. 将所有数据库实例手动设置为 MOUNT 状态。

注意:修改实例状态时,务必首先操作主库,待主库切换至 MOUNT 状态后,再操作备库。此顺序可有效避免因主备库状态不一致可能引发的数据同步失败,进而导致主库挂起(Hang)的风险。


-- 临时修改ALTER_MODE_STATUS,允许用户手动修改模式状态,动态添加完毕后需要再改回原值
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);

//临时关闭守护进程活动状态检测,允许用户手动修改模式状态,动态添加完毕后需要再改回原值
SP_SET_PARA_VALUE(1, 'DW_INACTIVE_INTERVAL', 0);

-- 修改数据库为MOUNT状态
ALTER DATABASE MOUNT;

动态添加归档节点

分别连接原系统中的所有实例,动态添加 dmarch.ini 中归档节点。


ALTER DATABASE ADD ARCHIVELOG 'DEST=OADB3,TYPE=REALTIME';

节点 OADB1 执行后信息如下


SQL> 
SQL> ALTER DATABASE ADD ARCHIVELOG 'DEST=OADB3,TYPE=REALTIME';
操作已执行
已用时间: 1.976(毫秒). 执行号:0.
SQL>

节点 OADB2执行后信息如下


SQL> ALTER DATABASE ADD ARCHIVELOG 'DEST=OADB3,TYPE=REALTIME';
操作已执行
已用时间: 1.611(毫秒). 执行号:0.
SQL>

手动修改原系统中所有实例为 OPEN 状态

必须先修改备库,再修改主库,否则可能会引发主备数据同步失败导致主库挂起。


-- 修改数据库为OPEN状态
ALTER DATABASE OPEN FORCE;
//将ALTER_MODE_STATUS改回原值

SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0); 

-- 将DW_INACTIVE_INTERVAL改回原值,本例中为60
SP_SET_PARA_VALUE(1, 'DW_INACTIVE_INTERVAL', 60);

启动OADB1备库


SQL> ALTER DATABASE OPEN FORCE;
操作已执行
已用时间: 6.540(毫秒). 执行号:0.
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0); 
DMSQL 过程已成功完成
已用时间: 23.184(毫秒). 执行号:1805.
SQL> SP_SET_PARA_VALUE(1, 'DW_INACTIVE_INTERVAL', 60);
DMSQL 过程已成功完成
已用时间: 21.683(毫秒). 执行号:1806.
SQL>

启动OADB2 主库


SQL> 
SQL> -- 修改数据库为OPEN状态
ALTER DATABASE OPEN FORCE;
//将ALTER_MODE_STATUS改回原值

SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0); 

-- 将DW_INACTIVE_INTERVAL改回原值,本例中为60
SP_SET_PARA_VALUE(1, 'DW_INACTIVE_INTERVAL', 60);2   操作已执行
已用时间: 38.398(毫秒). 执行号:0.
SQL> 2   3   DMSQL 过程已成功完成
已用时间: 11.983(毫秒). 执行号:1413.
SQL> SQL> 2   
DMSQL 过程已成功完成
已用时间: 19.653(毫秒). 执行号:1414.
SQL>

2.6.修改监视器 dmmonitor.ini

在 dmmonitor.ini 中添加新增的备库 OADB3:


MON_DW_IP     = 192.168.25.171:52141

添加后信息如下所示


[dmdba@OADB2 OADB]$ vi dmmonitor.ini 
[dmdba@OADB2 OADB]$ 
[dmdba@OADB2 OADB]$ cat dmmonitor.ini 
MON_DW_CONFIRM    = 1   # 0为非确认监视器 1为确认监视器 
MON_LOG_PATH    = /home/dmdba/dmdbms/log
MON_LOG_INTERVAL  = 60
MON_LOG_FILE_SIZE   = 200
MON_LOG_SPACE_LIMIT  = 1024 
[GRP_DW] 
 MON_INST_OGUID    = 20250311
 MON_DW_IP     = 192.168.25.170:52141
 MON_DW_IP     = 192.168.25.171:52141
 MON_DW_IP     = 192.168.25.173:52141
[dmdba@OADB2 OADB]$

2.7.启动所有守护进程以及监视器

分别启动主库和备库(包括 OADB3)的所有守护进程,最后启动监视器。


DmWatcherServiceWatcher start

登录确认监视器检查数据库状态


[dmdba@OADB1:/home/dmdba/dmdbms/log]$ dmmonitor /dmdata/OADB/dmmonitor.ini 
[monitor]         2025-11-06 17:24:38: DMMONITOR[4.0] V8
[monitor]         2025-11-06 17:24:39: DMMONITOR[4.0] IS READY.

[monitor]         2025-11-06 17:24:39: 
#-----------------------------------------------------------------------------------------------#
GET MONITOR CONNECT INFO FROM DMWATCHER(OADB1), THE FIRST LINE IS SELF INFO.

DW_CONN_TIME         MON_CONFIRM    MID            MON_IP                 MON_VERSION                                                     
2025-11-06 17:24:39  FALSE          691502464      ::ffff:192.168.25.170  DMMONITOR[4.0] V8
                                              
#-----------------------------------------------------------------------------------------------#

[monitor]         2025-11-06 17:24:39: 收到守护进程(OADB1)消息
                  WTIME                WSTATUS        INST_OK   INAME            ISTATUS     IMODE     RSTAT    N_OPEN   FLSN            CLSN            
                  2025-11-06 17:24:39  OPEN           OK        OADB1            OPEN        PRIMARY   VALID    16       2103841         2103841         

[monitor]         2025-11-06 17:24:39: 收到守护进程(OADB3)消息
                  WTIME                WSTATUS        INST_OK   INAME            ISTATUS     IMODE     RSTAT    N_OPEN   FLSN            CLSN            
                  2025-11-06 17:24:39  OPEN           OK        OADB3            OPEN        STANDBY   VALID    16       2103841         2103841         

[monitor]         2025-11-06 17:24:40: 收到守护进程(OADB2)消息
                  WTIME                WSTATUS        INST_OK   INAME            ISTATUS     IMODE     RSTAT    N_OPEN   FLSN            CLSN            
                  2025-11-06 17:24:40  OPEN           OK        OADB2            OPEN        STANDBY   VALID    16       2103841         2103841         

show
2025-11-06 17:24:42 
#================================================================================#
GROUP            OGUID       MON_CONFIRM     MODE            MPP_FLAG  
GRP_DW           20250311    FALSE           AUTO            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    
192.168.25.170  52141        2025-11-06 17:24:42  GLOBAL    VALID     OPEN           OADB1            OK        1     1     OPEN        PRIMARY   DSC_OPEN       REALTIME  VALID       FALSE       

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.25.170  5236       OK        OADB1            OPEN        PRIMARY   0          0            REALTIME  VALID       8609            2103841         8609            2103841         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    
192.168.25.171  52141        2025-11-06 17:24:42  GLOBAL    VALID     OPEN           OADB2            OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID       FALSE       

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.25.171  5236       OK        OADB2            OPEN        STANDBY   0          0            REALTIME  VALID       8609            2103841         8609            2103841         NONE                  

DATABASE(OADB2) APPLY INFO FROM (OADB1), REDOS_PARALLEL_NUM (1), WAIT_APPLY[FALSE]:
DSC_SEQNO[0], (RSEQ, SSEQ, KSEQ)[8609, 8609, 8609], (RLSN, SLSN, KLSN)[2103841, 2103841, 2103841], N_TSK[0], TSK_MEM_USE[0] 
REDO_LSN_ARR: (2103841)


<<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    
192.168.25.173  52141        2025-11-06 17:24:42  GLOBAL    VALID     OPEN           OADB3            OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID       FALSE       

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.25.173  5236       OK        OADB3            OPEN        STANDBY   0          0            REALTIME  VALID       8609            2103841         8609            2103841         NONE                  

DATABASE(OADB3) APPLY INFO FROM (OADB1), REDOS_PARALLEL_NUM (1), WAIT_APPLY[FALSE]:
DSC_SEQNO[0], (RSEQ, SSEQ, KSEQ)[8609, 8609, 8609], (RLSN, SLSN, KLSN)[2103841, 2103841, 2103841], N_TSK[0], TSK_MEM_USE[0] 
REDO_LSN_ARR: (2103841)


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

进行测试以验证数据同步情况,通过下图结果显示三个节点均能成功查询。

达梦数据库运维新策略:达梦数据库主备集群节点动态增加技巧

© 版权声明

相关文章

暂无评论

none
暂无评论...