在线扩容实时备库

2.4 在线扩容实时备库

2.4.1 引言

当生产环境需要对主备集群数据库进行增加备库节点,同时希望系统持续运行,又或者要求停机时间尽量短,此时我们可利用动态增加节点的方式进行系统扩容。


2.4.2 扩容节点规划

在这里插入图片描述
PS:本实验基于“DEM快速部署主备集群”实时主备集群进行的。


2.4.3 联机备份数据

找集群中任意节点,通过disql或管理工具做联机全库备份包含归档日志。

[dmdba@DMDB10 bin]$ ./disql SYSDBA/SYSDBA@192.168.0.11:5236
服务器[192.168.0.11:5236]:处于备库打开状态
登录使用时间 : 14.054(ms)
disql V8
SQL> backup database full to "dbfull20210226";
操作已执行
已用时间: 00:00:01.727. 执行号:204
SQL> 
SQL> select backup_path,object_name,backup_time,begin_lsn,end_lsn,bkp_num
2   from v$backupset 
3   where backup_name='dbfull20210226';

行号     BACKUP_PATH                                                                   OBJECT_NAME
---------- ----------------------------------------------------------------------------- -----------
           BACKUP_TIME                                                                                          BEGIN_LSN           
           ---------------------------------------------------------------------------------------------------- --------------------
           END_LSN              BKP_NUM    
           -------------------- -----------
1          /DMDB/app/DM8/FSDW/GRP_RT_02/DAMENG/bak/DB_DAMENG_FULL_20210226_111558_288770 DAMENG
           2021-02-26 11:15:59.951999                                                                           60402
           60402                1


已用时间: 00:00:01.291. 执行号:205.
SQL>

在这里插入图片描述
在这里插入图片描述

联机备份文件查看视图:
如果备份位置不是参数bak_path默认位置,应该在当前会话先调用函数

SF_BAKSET_BACKUP_DIR_ADD加载备份信息。
SF_BAKSET_BACKUP_DIR_ADD(
 device_type varchar, -- 设备类型
 backup_dir varchar(256) --备份路径
)

-- 该函数仅在当前会话生效,新的会话须重新调用加载备份信息。
v$backupset   显示备份集基本信息
v$backupset_bkp 显示备份集的备份片信息
v$backupset_dbf  显示备份集中数据文件的相关信息
v$backupset_dbinfo   备份集中涉及数据库相应的配置信息(如:页大小、大小写敏感)。
v$backupset_arch     联机备份过程中产生的归档日志。
v$backupset_search_dirs 显示备份集搜索目录,一般针对函数SF_BAKSET_BACKUP_DIR_ADD添加的搜索目录。
v$backupset_subs  查看并行备份过程中产生的子备份信息。

2.4.4 新增备库主机安装达梦软件
# 基本配置
echo "dmdba - nofile unlimited" >> /etc/security/limits.conf
groupadd -g 10001 dinstall
useradd -u 10001 -g dinstall -m -r -b /DMDB dmdba
echo "dmdba:dmdba" | chpasswd -m

# 安装释放
[dmdba@DMDB13 ~]$ cd /mnt
[dmdba@DMDB13 mnt]$ ls
DM8 Install.pdf  DMInstall.bin
[dmdba@DMDB13 mnt]$ ./DMInstall.bin -i 
请选择安装语言(C/c:中文 E/e:英文) [C/c]:
解压安装程序......... 
欢迎使用达梦数据库安装程序
是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:n
是否设置时区? (Y/y:是 N/n:否) [Y/y]:n
安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [1 典型安装]:
所需空间: 1071M

请选择安装目录 [/home/dmdba/dmdbms]:/DMDB/app/DM8  
可用空间: 93G
是否确认安装路径(/DMDB/app/DM8)? (Y/y:是 N/n:否)  [Y/y]: 

安装前小结
安装位置: /DMDB/app/DM8
所需空间: 1071M
可用空间: 93G
版本信息: 
有效日期: 
安装类型: 典型安装
是否确认安装? (Y/y:是 N/n:否):y
2021-02-25 10:08:34 
[INFO] 安装达梦数据库...
2021-02-25 10:08:35 
[INFO] 安装 基础 模块...
2021-02-25 10:08:41 
[INFO] 安装 服务器 模块...
2021-02-25 10:08:42 
[INFO] 安装 客户端 模块...
2021-02-25 10:08:47 
[INFO] 安装 驱动 模块...
2021-02-25 10:08:48 
[INFO] 安装 手册 模块...
2021-02-25 10:08:49 
[INFO] 安装 服务 模块...
2021-02-25 10:08:50 
[INFO] 移动ant日志文件。
2021-02-25 10:08:51 
[INFO] 安装达梦数据库完成。

请以root系统用户执行命令:
/DMDB/app/DM8/script/root/root_installer.sh
安装结束

[dmdba@DMDB13 mnt]$ exit
logout
[root@DMDB13 mnt]# /DMDB/app/DM8/script/root/root_installer.sh
移动 /DMDB/app/DM8/bin/dm_svc.conf 到/etc目录
修改服务器权限
创建DmAPService服务
移动服务脚本文件(/DMDB/app/DM8/bin/DmAPService 到 /etc/rc.d/init.d/DmAPService)
创建服务(DmAPService)完成
启动DmAPService服务
Starting DmAPService:                                      [ OK ]
[root@DMDB13 mnt]# 

# 初始化库(随意参数,到时会恢复)
[dmdba@DMDB13 ~]$ dminit path=/DMDB/data instance_name=GRP_RT_03
initdb V8
db version: 0x7000b
file dm.key not found, use default license!
License will expire on 2021-09-04
 log file path: /DMDB/data/DAMENG/DAMENG01.log
 log file path: /DMDB/data/DAMENG/DAMENG02.log
write to dir [/DMDB/data/DAMENG].
create dm database success. 2021-02-25 11:01:32
[dmdba@DMDB13 ~]$ 

# 首次打开一次库,否则后面做恢复时有提示
[dmdba@DMDB13 ~]$ dmserver /DMDB/data/DAMENG/dm.ini
file dm.key not found, use default license!
version info: develop
Use normal os_malloc instead of HugeTLB
Use normal os_malloc instead of HugeTLB
DM Database Server x64 V8 1-1-126-20.09.04-126608-ENT  startup...
Database mode = 0, oguid = 0
License will expire on 2021-09-04
file lsn: 0
ndct db load finished
ndct fill fast pool finished
iid page's trxid[1002]
NEXT TRX ID = 1003
pseg_collect_mgr_items, total collect 0 active_trxs, 0 cmt_trxs, 0 pre_cmt_trxs, 0 active_pages, 0 cmt_pages, 0 pre_cmt_pages, 0 mgr pages, 0 mgr recs!
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end
pseg recv finished
nsvr_startup end.
aud sys init success.
aud rt sys init success.
trx: 2004 purged 1 pages
trx: 2023 purged 1 pages
trx: 2024 purged 1 pages
trx: 2025 purged 1 pages
trx: 2026 purged 1 pages
trx: 2036 purged 1 pages
trx: 2156 purged 1 pages
trx: 2169 purged 1 pages
trx: 2170 purged 1 pages
trx: 2171 purged 1 pages
trx: 2172 purged 1 pages
trx: 2173 purged 1 pages
trx: 2175 purged 1 pages
trx: 2176 purged 1 pages
trx: 2178 purged 1 pages
trx: 2180 purged 1 pages
trx: 2186 purged 1 pages
trx: 2192 purged 1 pages
trx: 2202 purged 1 pages
trx: 2210 purged 37 pages
trx: 2217 purged 1 pages
trx: 2218 purged 1 pages
trx: 2219 purged 1 pages
trx: 2220 purged 1 pages
trx: 2232 purged 1 pages
trx: 2234 purged 1 pages
trx: 2235 purged 1 pages
trx: 2236 purged 1 pages
trx: 2241 purged 21 pages
trx: 2268 purged 1 pages
trx: 2269 purged 1 pages
trx: 2270 purged 1 pages
trx: 2271 purged 1 pages
trx: 2277 purged 1 pages
trx: 2279 purged 1 pages
trx: 2281 purged 1 pages
trx: 2286 purged 1 pages
trx: 2291 purged 1 pages
trx: 2296 purged 1 pages
trx: 2298 purged 1 pages
trx: 2301 purged 1 pages
trx: 2303 purged 1 pages
trx: 2315 purged 1 pages
trx: 2317 purged 1 pages
trx: 2319 purged 1 pages
trx: 2324 purged 1 pages
trx: 2327 purged 1 pages
trx: 2330 purged 1 pages
trx: 2333 purged 1 pages
trx: 2335 purged 1 pages
trx: 2336 purged 1 pages
trx: 2485 purged 1 pages
trx: 2490 purged 1 pages
trx: 2497 purged 8 pages
trx: 2526 purged 1 pages
systables desc init success.
ndct_db_load_info success.
nsvr_process_before_open begin.
nsvr_process_before_open success.
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end
SYSTEM IS READY.
^CServer is stopping...
listener closed  and all sessions disconnected
purge undo records in usegs...OK
full check point starting...
generate force checkpoint, rlog free space[528796672], used space[8066048]
ckpt_lsn, ckpt_fil, ckpt_off are set as (36854, 0, 8070144)
checkpoint: 0 pages flushed.
checkpoint finished, rlog free space, used space is (536862720, 0)
full check point end.
shutdown audit subsystem...OK
shutdown schedule subsystem...OK
shutdown timer successfully.
pre-shutdown MAL subsystem...OK
shutdown worker threads subsystem...OK
shutdown local parallel threads pool successfully.
shutdown replication subsystem...OK
shutdown sequence cache subsystem...OK
wait for mtsk link worker to exit..OK
shutdown mpp session subsystem...OK
wait for rapply is all over... OK
rapply worker threads exit successfully.
pre ending task & worker threads...OK
shutdown dblink subsystem...OK
shutdown session subsystem...OK
shutdown rollback segments purging subsystem...OK
shutdown rps subsystem...OK
shutdown transaction subsystem...OK
shutdown locking subsystem...OK
shutdown dbms_lock subsystem...OK
ending tsk and worker threads...OK
ckpt2_exec_immediately begin.
ckpt_lsn, ckpt_fil, ckpt_off are set as (36854, 0, 8070144)
checkpoint: 0 pages flushed.
checkpoint finished, rlog free space, used space is (536843264, 19456)
ckpt_lsn, ckpt_fil, ckpt_off are set as (37089, 0, 8089600)
checkpoint: 0 pages flushed.
checkpoint finished, rlog free space, used space is (536862720, 0)
ckpt_lsn, ckpt_fil, ckpt_off are set as (37089, 0, 8089600)
checkpoint: 0 pages flushed.
checkpoint finished, rlog free space, used space is (536862720, 0)
shutdown archive subsystem...OK
shutdown redo log subsystem...OK
shutdown MAL subsystem...OK
shutdown message compress subsystem successfully.
shutdown task subsystem...OK
shutdown trace subsystem...OK
shutdown svr_log subsystem...OK
shutdown plan cache subsystem...OK
shutdown file subsystem...OK
shutdown database dictionary subsystem...OK
shutdown mac cache subsystem...OK
shutdown dynamic login cache subsystem...OK
shutdown ifun/bifun/sfun/afun cache subsystem...OK
shutdown crypt subsystem...OK
shutdown pipe subsystem...OK
shutdown compress component...OK
shutdown slave redo subsystem...OK
shutdown kernel buffer subsystem...OK
shutdown SQL capture subsystem...OK
shutdown control file system...OK
shutdown dtype subsystem...OK
shutdown huge buffer and memory pools...OK
close lsnr socket
DM Database Server shutdown successfully.
[dmdba@DMDB13 ~]$ 

2.4.5 新增节点做数据脱机恢复
# 传输备份到新节点
[root@DMDB11 bak]# pwd
/DMDB/app/DM8/FSDW/GRP_RT_02/DAMENG/bak
[root@DMDB11 bak]# scp -r DB_DAMENG_FULL_20210226_111558_288770 dmdba@192.168.0.13:/DMDB/backup/
The authenticity of host '192.168.0.13 (192.168.0.13)' can't be established.
RSA key fingerprint is 88:5c:a4:e8:bb:c9:5d:2a:40:75:4f:99:c2:a7:a0:27.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.13' (RSA) to the list of known hosts.
dmdba@192.168.0.13's password: 
DB_DAMENG_FULL_20210226_111558_288770.meta                                                                                          100%   73KB  72.5KB/s   00:00    
DB_DAMENG_FULL_20210226_111558_288770.bak                                                                                           100%   26MB  26.4MB/s   00:01    
[root@DMDB11 bak]# 

# 做数据恢复
[dmdba@DMDB13 app]$ dmrman
dmrman V8
RMAN> restore database '/DMDB/data/DAMENG/dm.ini' from backupset '/DMDB/backup/DB_DAMENG_FULL_20210226_111558_288770';
restore database '/DMDB/data/DAMENG/dm.ini' from backupset '/DMDB/backup/DB_DAMENG_FULL_20210226_111558_288770';
RESTORE DATABASE CHECK......
RESTORE DATABASE,data collect......
RESTORE DATABASE,database refresh ......
RESTORE BACKUPSET [/DMDB/backup/DB_DAMENG_FULL_20210226_111558_288770] START......
total 3 packages processed...
total 7 packages processed...
RESTORE DATABASE,UPDATE ctl file......
RESTORE DATABASE,REBUILD key file......
RESTORE DATABASE,CHECK db info......
RESTORE DATABASE,UPDATE db info......
total 7 packages processed...
total 7 packages processed!
CMD END.CODE:[0]
restore successfully.
time used: 00:00:01.183
RMAN> recover  database '/DMDB/data/DAMENG/dm.ini';
recover database '/DMDB/data/DAMENG/dm.ini';
Database mode = 2, oguid = 495537969
EP[0]'s cur_lsn[60402]
[-8267]:未指定或者指定归档目录无效
RMAN> recover  database '/DMDB/data/DAMENG/dm.ini' from backupset '/DMDB/backup/DB_DAMENG_FULL_20210226_111558_288770';
recover database '/DMDB/data/DAMENG/dm.ini' from backupset '/DMDB/backup/DB_DAMENG_FULL_20210226_111558_288770';
Database mode = 2, oguid = 495537969
EP[0]'s cur_lsn[60402]
RESTORE RLOG CHECK......
CMD END.CODE:[603],DESC:[备份集[/DMDB/backup/DB_DAMENG_FULL_20210226_111558_288770]备份过程中未产生日志]
备份集[/DMDB/backup/DB_DAMENG_FULL_20210226_111558_288770]备份过程中未产生日志
recover successfully!
time used: 359.937(ms)
RMAN> recover  database '/DMDB/data/DAMENG/dm.ini' update db_magic;
recover database '/DMDB/data/DAMENG/dm.ini' update db_magic;
Database mode = 2, oguid = 495537969
EP[0]'s cur_lsn[60402]
EP[0]'s apply_lsn[60402] >= end_lsn[60402]
recover successfully!
time used: 00:00:01.057
RMAN> 


2.4.6 准备新增节点配置文件
将集群中任意节点的配置文件拷贝过来适当调整其中几个重要的参数。
[dmdba@DMDB13 ~]$ cd /DMDB/data/DAMENG/
[dmdba@DMDB13 DAMENG]$ ls 
bak      DAMENG01.log  dm.ctl  dminit20210225110129.log  HMAIN     rep_conflict.log  sqllog.ini  TEMP.DBF
ctl_bak  DAMENG02.log  dm.ini  dm_service.prikey         MAIN.DBF  ROLL.DBF          SYSTEM.DBF  trace
[dmdba@DMDB13 DAMENG]$ cp dm.ini dm.ini.bak
[dmdba@DMDB13 DAMENG]$ scp 192.168.0.10:/DMDB/app/DM8/FSDW/GRP_RT_01/DAMENG/*.ini .
The authenticity of host '192.168.0.10 (192.168.0.10)' can't be established.
RSA key fingerprint is cd:df:ff:1e:4a:58:22:36:4a:f0:5b:19:cb:60:ae:b5.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.10' (RSA) to the list of known hosts.
dmdba@192.168.0.10's password: 
dmarch.ini                                                                                                 100%  170     0.2KB/s   00:00    
dm.ini                                                                                                     100%   49KB  48.8KB/s   00:00    
dmmal.ini                                                                                                  100%  478     0.5KB/s   00:00    
sqllog.ini                                                                                                 100%  479     0.5KB/s   00:00    
[dmdba@DMDB13 DAMENG]$ 
[dmdba@DMDB13 DAMENG]$ ls -l *.ini*
-rw-r--r-- 1 dmdba dinstall   170 2月  25 11:08 dmarch.ini
-rw-r--r-- 1 dmdba dinstall 49812 2月  25 11:10 dm.ini
-rw-r--r-- 1 dmdba dinstall 49812 2月  25 11:07 dm.ini.bak
-rw-r--r-- 1 dmdba dinstall   478 2月  25 11:08 dmmal.ini
-rw-r--r-- 1 dmdba dinstall   479 2月  25 11:08 sqllog.ini

dm.ini

#实例名,建议使用―组名_守护环境_序号‖的命名方式,总长度不能超过 16
INSTANCE_NAME         =  GRP_RT_03  # 实例名
PORT_NUM              =  5236       #数据库实例监听端口
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 次的日志重演信息

dmmal.ini

MAL_CHECK_INTERVAL= 30       # MAL 链路检测时间间隔
MAL_CONN_FAIL_INTERVAL= 10   #判定 MAL 链路断开的时间
MAL_LOGIN_TIMEOUT= 15        # 登录超时
MAL_BUF_SIZE= 100
MAL_SYS_BUF_SIZE= 0
MAL_VPOOL_SIZE= 128
MAL_COMPRESS_LEVEL= 0

[MAL_INST1]
MAL_INST_NAME= GRP_RT_02
MAL_HOST= 10.10.10.11
MAL_PORT= 5436
MAL_INST_HOST= 192.168.0.11
MAL_INST_PORT= 5236
MAL_DW_PORT= 5536
MAL_INST_DW_PORT= 5336

[MAL_INST2]
MAL_INST_NAME= GRP_RT_01
MAL_HOST= 10.10.10.10
MAL_PORT= 5436
MAL_INST_HOST= 192.168.0.10
MAL_INST_PORT= 5236
MAL_DW_PORT= 5536
MAL_INST_DW_PORT= 5336

# 新增节点
[MAL_INST3]
MAL_INST_NAME= GRP_RT_03  #数据库实例名 
MAL_HOST= 10.10.10.13     #心跳IP,MAL子网监听IP地址 
MAL_PORT= 5436            #MAL子网监听TCP连接端口
MAL_INST_HOST= 192.168.0.13 #数据库实例对外提供服务的IP地址
MAL_INST_PORT= 5236         #数据库实例对外提供服务的TP连接端口
MAL_DW_PORT= 5536      #本地实例的守护进程监听TCP连接端口
MAL_INST_DW_PORT= 5336 #数据库实例监听守护进程请求连接的端口

dmarch.ini

[ARCHIVE_LOCAL1]  #本地归档
ARCH_TYPE= LOCAL
ARCH_DEST= /DMDB/arch/GRP_RT_03
ARCH_FILE_SIZE= 128    #归档日志单文件大小
ARCH_SPACE_LIMIT= 8192 #归档日志总大小限制

[ARCHIVE_REALTIME1]  #远程实时归档
ARCH_TYPE= REALTIME
ARCH_DEST= GRP_RT_01  #远程实例

[ARCHIVE_REALTIME2]  #远程实时归档
ARCH_TYPE= REALTIME
ARCH_DEST= GRP_RT_02  #远程实例

dmwatcher.ini

[GRP1]
DW_TYPE= GLOBAL      #全局守护类型
DW_MODE= AUTO        #自动切换模式,需要一个中间的监视器监控节点实例的状态,作出准确的判断和切换,踢掉故障节点 
DW_ERROR_TIME= 15    #远程守护进程故障认定时间
INST_ERROR_TIME= 15  #本地实例故障认定时间
INST_OGUID= 495537969   #守护系统唯一 OGUID 值
INST_INI= /DMDB/data/DAMENG/dm.ini  #本地实例dm.ini配置文件路径
INST_AUTO_RESTART= 1  #打开实例的自动拉起功能
INST_STARTUP_CMD= /DMDB/app/DM8/bin/dmserver   #本地实例命令行方式启动
INST_RECOVER_TIME= 60    #主库守护进程启动恢复的间隔时间
RLOG_SEND_THRESHOLD= 0   #指定主库发送日志到备库的时间阀值,默认关闭
RLOG_APPLY_THRESHOLD=0   #指定备库重演日志的时间阀值,默认关闭

2.4.7 mount方式启动备库,配置OGUID

[dmdba@DMDB13 app]$ dmserver /DMDB/data/DAMENG/dm.ini mount
file dm.key not found, use default license!
version info: develop
Use normal os_malloc instead of HugeTLB
Use normal os_malloc instead of HugeTLB
DM Database Server x64 V8 1-1-126-20.09.04-126608-ENT  startup...
Database mode = 2, oguid = 495537969
License will expire on 2021-09-04
file lsn: 60402
ndct db load finished
ndct fill fast pool finished
nsvr_startup end.
aud sys init success.
aud rt sys init success.
systables desc init success.
ndct_db_load_info success.
SYSTEM IS READY.
[dmdba@DMDB13 ~]$ disql 
disql V8
用户名:SYSDBA
密码:

服务器[LOCALHOST:5236]:处于备库配置状态
登录使用时间 : 13.104(ms)
SQL> sp_set_para_value(1,'ALTER_MODE_STATUS',0);
DMSQL 过程已成功完成
已用时间: 16.717(毫秒). 执行号:0.
SQL> sp_set_oguid(495537969);
sp_set_oguid(495537969);
[-720]:守护进程处于活动状态,或当前配置(ALTER_MODE_STATUS)不允许该操作.
已用时间: 1.357(毫秒). 执行号:0.
SQL>  sp_set_para_value(1,'ALTER_MODE_STATUS',1);
DMSQL 过程已成功完成
已用时间: 13.416(毫秒). 执行号:2.
SQL> sp_set_oguid(495537969);
DMSQL 过程已成功完成
已用时间: 11.666(毫秒). 执行号:3.
SQL> ALTER DATABASE STANDBY;
操作已执行
已用时间: 12.562(毫秒). 执行号:0.
SQL> sp_set_para_value(1,'ALTER_MODE_STATUS',0);
DMSQL 过程已成功完成
已用时间: 13.010(毫秒). 执行号:4.
SQL> select * from v$mal_link_status;
未选定行
SQL> select oguid,name,status$,mode$ from v$instance;

行号     OGUID       NAME      STATUS$ MODE$  
---------- ----------- --------- ------- -------
1          495537969   GRP_RT_03 MOUNT   STANDBY

已用时间: 3.336(毫秒). 执行号:1.

2.4.8 动态添加MAL配置

在集群中原各个节点上动态增加MAL配置。

### 1. 动态增加MAL
SF_MAL_CONFIG(1,0);
SF_MAL_INST_ADD('MAL_INST3','GRP_RT_03','10.10.10.13',5436,'192.168.0.13',5236,5536,0,5336);
--其实可以直接配置dmmal.ini添加新备库项后调用此函数生效。省去前面很多函数的调用。使用视图v$dm_mal_ini验证配置。
SF_MAL_CONFIG_APPLY();  
SF_MAL_CONFIG(0,0);

在这里插入图片描述
在这里插入图片描述
应用MAL配置:

SF_MAL_CONFIG(
CFG_FLAG INT, --1 设置配置状态;  0 取消配置状态
BRO_FLAG INT  --1 多节点广播设置;0 本地设置
)

动态添加MAL配置:

SF_MAL_INST_ADD(
 ITEM_NAME VARCHAR,  -- 段名
 INST_NAME VARCHAR,  -- 实例名
 MAL_IP VARCHAR,     -- MAL内部子网IP地址
 MAL_PORT INT,       -- MAL内部子网端口号
 MAL_INST_IP VARCHAR, -- 数据库实例IP地址
 MAL_INST_PORT INT,   -- 数据库实例端口号
 MAL_DW_PORT,         -- 守护进程监听端口号
  0, 
 MAL_INST_DW_PORT    -- 数据库实例监听守护进程连接端口号
)

在这里插入图片描述


2.4.9 动态添加归档配置

分别连接到原守护集群系统中的各个节点实例,并将实例置于mount状态,添加归档配置。

## 关闭原守护集群中所有守护进程
# 切记:停止守护集群各个进程的顺序。 备-》主
[root@DMDB11 DAMENG]# /etc/init.d/DmWatcherService_GRP_RT_02 stop
Stopping DmWatcherService_GRP_RT_02:                       [ OK ]
[dmdba@DMDB10 ~]$ /etc/init.d/DmWatcherService_GRP_RT_01 stop 
Stopping DmWatcherService_GRP_RT_01:                       [ OK ]


# 由于关闭守护进程,在监视器中可观察到WSTATUS为ERROR
tip
[monitor]         2021-02-27 15:56:46: 实例GRP_RT_01[PRIMARY, OPEN, ISTAT_SAME:TRUE]当前没有命令正在执行
[monitor]         2021-02-27 15:56:46: 守护进程(GRP_RT_01)状态为ERROR,无法判断实例(GRP_RT_01)是否正常,需要人工干预

[monitor]         2021-02-27 15:56:46: 实例GRP_RT_02[STANDBY, OPEN, ISTAT_SAME:TRUE]当前没有命令正在执行
[monitor]         2021-02-27 15:56:46: 守护进程(GRP_RT_02)状态为ERROR,无法判断实例(GRP_RT_02)是否正常,需要人工干预

[monitor]         2021-02-27 15:56:46: 组(GRP1)中当前没有实例和守护进程都是OPEN状态的主库实例,请根据提示信息考虑是否进行人工干预!

[monitor]         2021-02-27 15:56:46: 不是所有组中都有实例和守护进程都是OPEN状态的主库实例,请根据以上提示信息采取合理的处理方式!

show
2021-02-27 15:57:42 
#================================================================================#
GROUP            OGUID       MON_CONFIRM     MODE            MPP_FLAG  
GRP1             495537969   TRUE            AUTO            FALSE     

ERROR DATABASE:

<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.10     5536         2021-02-27 15:54:33  GLOBAL    VALID     ERROR          GRP_RT_01        OK        1     1     OPEN        PRIMARY   DSC_OPEN       REALTIME  VALID    

EP INFO:
INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT    FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
5236       OK        GRP_RT_01        OPEN        PRIMARY   0          0            REALTIME  VALID    8944            60411           8944            60411           NONE                  

<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.11     5536         2021-02-27 15:54:22  GLOBAL    VALID     ERROR          GRP_RT_02        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID    

EP INFO:
INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT    FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
5236       OK        GRP_RT_02        OPEN        STANDBY   0          0            REALTIME  VALID    8938            60411           8938            60411           NONE                  

DATABASE(GRP_RT_02) APPLY INFO FROM (GRP_RT_01):
DSC_SEQNO[0], (ASEQ, SSEQ, KSEQ)[8944, 8944, 8944], (ALSN, SLSN, KLSN)[60411, 60411, 60411], N_TSK[0], TSK_MEM_USE[0]

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

主要应用SQL

# 目的:允许手工修改数据库实例的模式(主备)和状态(打开、配置、挂起)。
sp_set_para_value(1,'ALTER_MODE_STATUS',1);
# 前提:等到数据库实例接收守护进程发送消息超时DW_INACTIVE_INTERVAL(默认值60秒),
# 否则认为守护进程仍处于活动状态,不允许修改数据库的模式。
alter database mount;
sp_set_para_value(1,'ALTER_MODE_STATUS',0);
alter database add archivelog 'DEST=GRP_RT_03, TYPE=REALTIME';
select * from v$dm_arch_ini;
select name,status$,mode$ from v$instance;

在这里插入图片描述
在这里插入图片描述
2.4.10 配置监视器
在dmmonitor.ini文件中添加一条新增备库的监视记录:

MON_DW_IP = 192.168.0.13:5536

dmmonitor.ini

[root@DMDB12 ~]# more /DMDB/app/dmmonitor/FSDW/dmmonitor/dmmonitor.ini
MON_DW_CONFIRM= 1
MON_LOG_INTERVAL= 60
MON_LOG_FILE_SIZE= 64
MON_LOG_SPACE_LIMIT= 0
[GRP1]
MON_INST_OGUID= 495537969
MON_DW_IP= 10.10.10.10:5536
MON_DW_IP= 10.10.10.11:5536
MON_DW_IP= 10.10.10.13:5536

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

启动守护进程(当守护进程处于关闭状态)
守护集群,在确认监视器没有关闭情况下,保证主库先启动守护进程。否则会发生主库切换。

[dmdba@DMDB10 DAMENG]$ /etc/init.d/DmWatcherService_GRP_RT_01 start
Starting DmWatcherService_GRP_RT_01:                       [ OK ]
[dmdba@DMDB11 DAMENG]$ /etc/init.d/DmWatcherService_GRP_RT_02 start
Starting DmWatcherService_GRP_RT_02:                       [ OK ]
[dmdba@DMDB12 ~]# /etc/init.d/DmMonitorService_FSDW start
Starting DmMonitorService_FSDW:                       [ OK ]

[dmdba@DMDB13 DAMENG]$ dmwatcher /DMDB/data/DAMENG/dmwatcher.ini 
DMWATCHER[4.0] V8
DMWATCHER[4.0] IS READY

##### 只要启动新增节点的守护进程,在监视器上可观察它的实例状态
show global info
2021-02-27 17:01:06 
#================================================================================#
GROUP            OGUID       MON_CONFIRM     MODE            MPP_FLAG  
GRP1             495537969   TRUE            AUTO            FALSE     

<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.10     5536         2021-02-27 17:01:06  GLOBAL    VALID     OPEN           GRP_RT_01        OK        1     1     OPEN        PRIMARY   DSC_OPEN       REALTIME  VALID    

IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.11     5536         2021-02-27 17:01:06  GLOBAL    VALID     OPEN           GRP_RT_02        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID    

IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.13     5536         2021-02-26 15:04:46  GLOBAL    VALID     OPEN           GRP_RT_03        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID    


show
2021-02-27 17:04:49 
#================================================================================#
GROUP            OGUID       MON_CONFIRM     MODE            MPP_FLAG  
GRP1             495537969   TRUE            AUTO            FALSE     


<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.10     5536         2021-02-27 17:04:49  GLOBAL    VALID     OPEN           GRP_RT_01        OK        1     1     OPEN        PRIMARY   DSC_OPEN       REALTIME  VALID    

EP INFO:
INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT    FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
5236       OK        GRP_RT_01        OPEN        PRIMARY   0          0            REALTIME  VALID    8948            61772           8948            61772           NONE                  

<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.11     5536         2021-02-27 17:04:50  GLOBAL    VALID     OPEN           GRP_RT_02        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID    

EP INFO:
INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT    FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
5236       OK        GRP_RT_02        OPEN        STANDBY   0          0            REALTIME  VALID    8938            61772           8938            61772           NONE                  

DATABASE(GRP_RT_02) APPLY INFO FROM (GRP_RT_01):
DSC_SEQNO[0], (ASEQ, SSEQ, KSEQ)[8948, 8948, 8948], (ALSN, SLSN, KLSN)[61772, 61772, 61772], N_TSK[0], TSK_MEM_USE[0]


<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.13     5536         2021-02-26 15:08:29  GLOBAL    VALID     OPEN           GRP_RT_03        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID    

EP INFO:
INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT    FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
5236       OK        GRP_RT_03        OPEN        STANDBY   0          0            REALTIME  VALID    8941            61772           8941            61772           NONE                  

DATABASE(GRP_RT_03) APPLY INFO FROM (GRP_RT_01):
DSC_SEQNO[0], (ASEQ, SSEQ, KSEQ)[8948, 8948, 8948], (ALSN, SLSN, KLSN)[61772, 61772, 61772], N_TSK[0], TSK_MEM_USE[0]


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


2.4.12 为新增节点注册自启服务
[root@DMDB13 root]# ./dm_service_installer.sh -t dmserver -dm_ini /DMDB/data/DAMENG/dm.ini -p GRP_RT_03
移动服务脚本文件(/DMDB/app/DM8/bin/DmServiceGRP_RT_03 到 /etc/rc.d/init.d/DmServiceGRP_RT_03)
创建服务(DmServiceGRP_RT_03)完成

[root@DMDB13 root]# ./dm_service_installer.sh -t dmwatcher -watcher_ini /DMDB/data/DAMENG/dmwatcher.ini -p GRP_RT_03
移动服务脚本文件(/DMDB/app/DM8/bin/DmWatcherServiceGRP_RT_03 到 /etc/rc.d/init.d/DmWatcherServiceGRP_RT_03)
创建服务(DmWatcherServiceGRP_RT_03)完成

[root@DMDB13 root]# chkconfig --list |grep ^Dm
DmAPService     0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
DmServiceGRP_RT_03      0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
DmWatcherServiceGRP_RT_03       0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭

2.4.13 验证主备集群数据同步
[dmdba@DMDB13 ~]$ disql SYSDBA/SYSDBA@192.168.0.10

服务器[192.168.0.10:5236]:处于主库打开状态
登录使用时间 : 8.683(ms)
disql V8
SQL> create table test (id number);
操作已执行
已用时间: 62.570(毫秒). 执行号:4.
SQL> insert into test select level from dual connect by level<=5;
影响行数 5

已用时间: 13.689(毫秒). 执行号:5.
SQL> commit;
操作已执行
已用时间: 6.581(毫秒). 执行号:6.
SQL> select * from test;

行号     ID
---------- --
1          1
2          2
3          3
4          4
5          5

已用时间: 3.156(毫秒). 执行号:7.
SQL> conn SYSDBA/SYSDBA@192.168.0.11

服务器[192.168.0.11:5236]:处于备库打开状态
登录使用时间 : 7.759(ms)
SQL> select * from test;

行号     ID
---------- --
1          1
2          2
3          3
4          4
5          5

已用时间: 7.105(毫秒). 执行号:0.
SQL> conn SYSDBA/SYSDBA@192.168.0.13

服务器[192.168.0.13:5236]:处于备库打开状态
登录使用时间 : 6.277(ms)
SQL> select * from test;

行号     ID
---------- --
1          1
2          2
3          3
4          4
5          5

已用时间: 5.431(毫秒). 执行号:100.
SQL> 

2.4.14 测试手工正常切换主备库
show global info
2021-02-27 17:15:55 
#================================================================================#
GROUP            OGUID       MON_CONFIRM     MODE            MPP_FLAG  
GRP1             495537969   TRUE            AUTO            FALSE     


<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.10     5536         2021-02-27 17:15:55  GLOBAL    VALID     OPEN           GRP_RT_01        OK        1     1     OPEN        PRIMARY   DSC_OPEN       REALTIME  VALID    

IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.11     5536         2021-02-27 17:15:55  GLOBAL    VALID     OPEN           GRP_RT_02        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID    

IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.13     5536         2021-02-26 15:19:35  GLOBAL    VALID     OPEN           GRP_RT_03        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID    


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

list
#-------------------dmwatcher configuration of instance(GRP_RT_01)----------------------#
[GRP1]
DW_TYPE                    = GLOBAL
DW_MODE                    = AUTO
DW_ERROR_TIME              = 15
INST_ERROR_TIME            = 15
INST_RECOVER_TIME          = 60
INST_INI                   = /DMDB/app/DM8/FSDW/GRP_RT_01/DAMENG/dm.ini
DCR_INI                    = 
INST_OGUID                 = 495537969
INST_STARTUP_CMD           = /DMDB/app/DM8/FSDW/bin/DmService_GRP_RT_01 start
INST_AUTO_RESTART          = 1
INST_SERVICE_IP_CHECK      = 0
RLOG_SEND_THRESHOLD        = 0
RLOG_APPLY_THRESHOLD       = 0

#-------------------dmwatcher configuration of instance(GRP_RT_02)----------------------#
[GRP1]
DW_TYPE                    = GLOBAL
DW_MODE                    = AUTO
DW_ERROR_TIME              = 15
INST_ERROR_TIME            = 15
INST_RECOVER_TIME          = 60
INST_INI                   = /DMDB/app/DM8/FSDW/GRP_RT_02/DAMENG/dm.ini
DCR_INI                    = 
INST_OGUID                 = 495537969
INST_STARTUP_CMD           = /DMDB/app/DM8/FSDW/bin/DmService_GRP_RT_02 start
INST_AUTO_RESTART          = 1
INST_SERVICE_IP_CHECK      = 0
RLOG_SEND_THRESHOLD        = 0
RLOG_APPLY_THRESHOLD       = 0

#-------------------dmwatcher configuration of instance(GRP_RT_03)----------------------#
[GRP1]
DW_TYPE                    = GLOBAL
DW_MODE                    = AUTO
DW_ERROR_TIME              = 15
INST_ERROR_TIME            = 15
INST_RECOVER_TIME          = 60
INST_INI                   = /DMDB/data/DAMENG/dm.ini
DCR_INI                    = 
INST_OGUID                 = 495537969
INST_STARTUP_CMD           = /DMDB/app/DM8/bin/dmserver
INST_AUTO_RESTART          = 1
INST_SERVICE_IP_CHECK      = 0
RLOG_SEND_THRESHOLD        = 0
RLOG_APPLY_THRESHOLD       = 0


#############################
# 尝试主库切换至新增节点
choose switchover 
Can choose one of the following instances to do switchover:
1: GRP_RT_02
2: GRP_RT_03

switchover GRP_RT_03 
[monitor]         2021-02-27 17:22:57: 未登录监视器或服务器公钥发生变化,请重新登录!

login
用户名:SYSDBA
密码:
[monitor]         2021-02-27 17:23:05: 登录监视器成功!

switchover GRP_RT_03 
[monitor]         2021-02-27 17:23:09: 开始切换实例GRP_RT_03
[monitor]         2021-02-27 17:23:09: 通知守护进程GRP_RT_01切换SWITCHOVER状态
[monitor]         2021-02-27 17:23:10: 守护进程(GRP_RT_01)状态切换 [OPEN-->SWITCHOVER]
[monitor]         2021-02-27 17:23:10: 切换守护进程GRP_RT_01为SWITCHOVER状态成功
[monitor]         2021-02-27 17:23:10: 通知守护进程GRP_RT_03切换SWITCHOVER状态
[monitor]         2021-02-27 17:23:10: 守护进程(GRP_RT_03)状态切换 [OPEN-->SWITCHOVER]
[monitor]         2021-02-27 17:23:10: 切换守护进程GRP_RT_03为SWITCHOVER状态成功
[monitor]         2021-02-27 17:23:10: 实例GRP_RT_01开始执行SP_SET_GLOBAL_DW_STATUS(0, 6)语句
[monitor]         2021-02-27 17:23:10: 实例GRP_RT_01执行SP_SET_GLOBAL_DW_STATUS(0, 6)语句成功
[monitor]         2021-02-27 17:23:10: 实例GRP_RT_03开始执行SP_SET_GLOBAL_DW_STATUS(0, 6)语句
[monitor]         2021-02-27 17:23:10: 实例GRP_RT_03执行SP_SET_GLOBAL_DW_STATUS(0, 6)语句成功
[monitor]         2021-02-27 17:23:10: 实例GRP_RT_01开始执行ALTER DATABASE MOUNT语句
[monitor]         2021-02-27 17:23:12: 实例GRP_RT_01执行ALTER DATABASE MOUNT语句成功
[monitor]         2021-02-27 17:23:12: 实例GRP_RT_03开始执行SP_APPLY_KEEP_PKG()语句
[monitor]         2021-02-27 17:23:12: 实例GRP_RT_03执行SP_APPLY_KEEP_PKG()语句成功
[monitor]         2021-02-27 17:23:12: 实例GRP_RT_03开始执行ALTER DATABASE MOUNT语句
[monitor]         2021-02-27 17:23:14: 实例GRP_RT_03执行ALTER DATABASE MOUNT语句成功
[monitor]         2021-02-27 17:23:14: 实例GRP_RT_01开始执行ALTER DATABASE STANDBY语句
[monitor]         2021-02-27 17:23:14: 实例GRP_RT_01执行ALTER DATABASE STANDBY语句成功
[monitor]         2021-02-27 17:23:14: 实例GRP_RT_03开始执行ALTER DATABASE PRIMARY语句
[monitor]         2021-02-27 17:23:14: 实例GRP_RT_03执行ALTER DATABASE PRIMARY语句成功
[monitor]         2021-02-27 17:23:14: 通知实例GRP_RT_03修改所有归档状态无效
[monitor]         2021-02-27 17:23:14: 修改所有实例归档为无效状态成功
[monitor]         2021-02-27 17:23:14: 实例GRP_RT_01开始执行ALTER DATABASE OPEN FORCE语句
[monitor]         2021-02-27 17:23:14: 实例GRP_RT_01执行ALTER DATABASE OPEN FORCE语句成功
[monitor]         2021-02-27 17:23:14: 实例GRP_RT_03开始执行ALTER DATABASE OPEN FORCE语句
[monitor]         2021-02-27 17:23:16: 实例GRP_RT_03执行ALTER DATABASE OPEN FORCE语句成功
[monitor]         2021-02-27 17:23:16: 实例GRP_RT_01开始执行SP_SET_GLOBAL_DW_STATUS(6, 0)语句
[monitor]         2021-02-27 17:23:16: 实例GRP_RT_01执行SP_SET_GLOBAL_DW_STATUS(6, 0)语句成功
[monitor]         2021-02-27 17:23:16: 实例GRP_RT_03开始执行SP_SET_GLOBAL_DW_STATUS(6, 0)语句
[monitor]         2021-02-27 17:23:16: 实例GRP_RT_03执行SP_SET_GLOBAL_DW_STATUS(6, 0)语句成功
[monitor]         2021-02-27 17:23:16: 通知守护进程GRP_RT_01切换OPEN状态
[monitor]         2021-02-27 17:23:16: 守护进程(GRP_RT_01)状态切换 [SWITCHOVER-->OPEN]
[monitor]         2021-02-27 17:23:16: 切换守护进程GRP_RT_01为OPEN状态成功
[monitor]         2021-02-27 17:23:16: 通知守护进程GRP_RT_03切换OPEN状态
[monitor]         2021-02-27 17:23:16: 守护进程(GRP_RT_03)状态切换 [SWITCHOVER-->OPEN]
[monitor]         2021-02-27 17:23:16: 切换守护进程GRP_RT_03为OPEN状态成功
[monitor]         2021-02-27 17:23:16: 通知组(GRP1)的守护进程执行清理操作
[monitor]         2021-02-27 17:23:16: 清理守护进程(GRP_RT_01)请求成功
[monitor]         2021-02-27 17:23:16: 清理守护进程(GRP_RT_02)请求成功
2021-02-27 17:23:16 
#================================================================================#
GROUP            OGUID       MON_CONFIRM     MODE            MPP_FLAG  
GRP1             495537969   TRUE            AUTO            FALSE     


<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.13     5536         2021-02-26 15:26:57  GLOBAL    VALID     OPEN           GRP_RT_03        OK        1     1     OPEN        PRIMARY   DSC_OPEN       REALTIME  VALID    

EP INFO:
INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT    FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
5236       OK        GRP_RT_03        OPEN        PRIMARY   0          0            REALTIME  VALID    8958            61816           8958            63173           NONE                  

<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.10     5536         2021-02-27 17:23:17  GLOBAL    VALID     OPEN           GRP_RT_01        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  INVALID  

EP INFO:
INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT    FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
5236       OK        GRP_RT_01        OPEN        STANDBY   0          0            REALTIME  INVALID  8957            61815           8957            61815           NONE                  

DATABASE(GRP_RT_01) APPLY INFO FROM (GRP_RT_03):
DSC_SEQNO[0], (ASEQ, SSEQ, KSEQ)[8957, 8957, 8957], (ALSN, SLSN, KLSN)[61815, 61815, 61815], N_TSK[0], TSK_MEM_USE[0]


<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.11     5536         2021-02-27 17:23:17  GLOBAL    VALID     OPEN           GRP_RT_02        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  INVALID  

EP INFO:
INST_PORT  INST_OK   INAME            ISTATUS     IMODE     DSC_SEQNO  DSC_CTL_NODE RTYPE     RSTAT    FSEQ            FLSN            CSEQ            CLSN            DW_STAT_FLAG          
5236       OK        GRP_RT_02        OPEN        STANDBY   0          0            REALTIME  INVALID  8938            61815           8938            61815           NONE                  

DATABASE(GRP_RT_02) APPLY INFO FROM (GRP_RT_01):
DSC_SEQNO[0], (ASEQ, SSEQ, KSEQ)[8957, 8957, 8957], (ALSN, SLSN, KLSN)[61815, 61815, 61815], N_TSK[0], TSK_MEM_USE[0]


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

[monitor]         2021-02-27 17:23:16: 清理守护进程(GRP_RT_03)请求成功
[monitor]         2021-02-27 17:23:16: 实例GRP_RT_03切换成功

[monitor]         2021-02-27 17:23:19: 守护进程(GRP_RT_03)状态切换 [OPEN-->RECOVERY]
                  WTIME                WSTATUS        INST_OK   INAME            ISTATUS     IMODE     RSTAT    N_OPEN   FLSN            CLSN            
                  2021-02-26 15:27:00  RECOVERY       OK        GRP_RT_03        OPEN        PRIMARY   VALID    7        63173           63173           

[monitor]         2021-02-27 17:23:21: 守护进程(GRP_RT_03)状态切换 [RECOVERY-->OPEN]
                  WTIME                WSTATUS        INST_OK   INAME            ISTATUS     IMODE     RSTAT    N_OPEN   FLSN            CLSN            
                  2021-02-26 15:27:02  OPEN           OK        GRP_RT_03        OPEN        PRIMARY   VALID    7        63173           63173           

show global info
2021-02-27 17:24:20 
#================================================================================#
GROUP            OGUID       MON_CONFIRM     MODE            MPP_FLAG  
GRP1             495537969   TRUE            AUTO            FALSE     


<<DATABASE GLOBAL INFO:>>
IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.13     5536         2021-02-26 15:28:01  GLOBAL    VALID     OPEN           GRP_RT_03        OK        1     1     OPEN        PRIMARY   DSC_OPEN       REALTIME  VALID    

IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.10     5536         2021-02-27 17:24:21  GLOBAL    VALID     OPEN           GRP_RT_01        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID    

IP              MAL_DW_PORT  WTIME                WTYPE     WCTLSTAT  WSTATUS        INAME            INST_OK   N_EP  N_OK  ISTATUS     IMODE     DSC_STATUS     RTYPE     RSTAT    
10.10.10.11     5536         2021-02-27 17:24:21  GLOBAL    VALID     OPEN           GRP_RT_02        OK        1     1     OPEN        STANDBY   DSC_OPEN       REALTIME  VALID    


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


2.4.15 注意事项
  1. 原守护集群中添加归档配置时,一定要先把其守护进程关闭,否则远程守护进程会广播消息,本地守护进程验证消息后会自动把本地数据库实例打开,届时无法修改归档模式和添加归档配置。
  2. 启动数据库实例服务时平时直接启动即可,因为它预先在库配置主备模式后,启动时隐含意思就是先启动mount状态,再通过后面集群中的本地守护进程和远程守护进程之间相互传递数据信息和控制信息,符合打开库条件时,自动以open方式打开主备库。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值