2.1 資料守護集群の實時主備_故障自動轉移
1. 前期規劃 
建議:MAL子系統盡量單獨走一個網路(內部),以免引起對外提供服務的公共網路,因為歸檔日志傳輸很頻繁的,
2. 安裝資料庫基礎軟體
(略)
3.初始化資料庫(主庫)
[root@DMDB1 network-scripts]# su - dmdba
## 3.1 初始化主庫:庫名 dmdb 實體名:GRP1_RT_01
[dmdba@DMDB1 ~]$ dminit PATH=/DMDB/data DB_NAME=dmdb INSTANCE_NAME=GRP1_RT_01
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/dmdb/dmdb01.log
log file path: /DMDB/data/dmdb/dmdb02.log
write to dir [/DMDB/data/dmdb].
create dm database success. 2020-12-02 10:41:27
## 3.2 檢查資料庫的資料檔案初始情況
[dmdba@DMDB1 ~]$ ls -lh /DMDB/data/dmdb
總用量 512K
drwxr-xr-x 2 dmdba dinstall 4.0K 12月 2 10:41 bak
drwxr-xr-x 2 dmdba dinstall 4.0K 12月 2 10:41 ctl_bak
-rw-r--r-- 1 dmdba dinstall 5.0K 12月 2 10:41 dm.ctl
-rw-r--r-- 1 dmdba dinstall 256M 12月 2 10:41 dmdb01.log
-rw-r--r-- 1 dmdba dinstall 256M 12月 2 10:41 dmdb02.log
-rw-r--r-- 1 dmdba dinstall 49K 12月 2 10:41 dm.ini
-rw-r--r-- 1 dmdba dinstall 807 12月 2 10:41 dminit20201202104124.log
-rw-r--r-- 1 dmdba dinstall 633 12月 2 10:41 dm_service.prikey
drwxr-xr-x 2 dmdba dinstall 4.0K 12月 2 10:41 HMAIN
-rw-r--r-- 1 dmdba dinstall 128M 12月 2 10:41 MAIN.DBF
-rw-r--r-- 1 dmdba dinstall 128M 12月 2 10:41 ROLL.DBF
-rw-r--r-- 1 dmdba dinstall 479 12月 2 10:41 sqllog.ini
-rw-r--r-- 1 dmdba dinstall 10M 12月 2 10:41 SYSTEM.DBF
## 3.3 注冊資料庫實體的服務
[root@DMDB1 ~]# /DMDB/app/DM8/script/root/dm_service_installer.sh -t dmserver -dm_ini /DMDB/data/dmdb/dm.ini -p GRP1_RT_01
移動服務腳本檔案(/DMDB/app/DM8/bin/DmServiceGRP1_RT_01 到 /etc/rc.d/init.d/DmServiceGRP1_RT_01)
創建服務(DmServiceGRP1_RT_01)完成
[root@DMDB1 ~]# chkconfig --list |grep -i dm
DmAPService 0:關閉 1:關閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關閉
DmServiceGRP1_RT_01 0:關閉 1:關閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關閉
mdmonitor 0:關閉 1:關閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關閉
nfs-rdma 0:關閉 1:關閉 2:關閉 3:關閉 4:關閉 5:關閉 6:關閉
rdma 0:關閉 1:關閉 2:關閉 3:關閉 4:關閉 5:關閉 6:關閉
[root@DMDB1 ~]# service DmServiceGRP1_RT_01 start
Starting DmServiceGRP1_RT_01: [ OK ]
## 3.4 檢查下資料庫是否能正常登錄
[root@DMDB1 ~]# su - dmdba
[dmdba@DMDB1 ~]$ disql SYSDBA/SYSDBA
服務器[LOCALHOST:5236]:處于普通打開狀態
登錄使用時間 : 5.957(ms)
disql V8
SQL> select name,instance_name,host_name,STATUS$ from v$instance;
行號 NAME INSTANCE_NAME HOST_NAME STATUS$
---------- ---------- ------------- --------- -------
1 GRP1_RT_01 GRP1_RT_01 DMDB1 OPEN
已用時間: 7.716(毫秒). 執行號:500.
SQL> select name,status$,arch_mode from v$database;
行號 NAME STATUS$ ARCH_MODE
---------- ---- ----------- ---------
1 dmdb 4 N
已用時間: 8.636(毫秒). 執行號:502.
4. 脫機備份主庫
由于沒有開啟歸檔,所以選擇dmrman脫機備份方式,
## 4.1 停庫
[root@DMDB1 ~]# su - dmdba
[dmdba@DMDB1 ~]$ service DmServiceGRP1_RT_01 stop
Stopping DmServiceGRP1_RT_01: [ OK ]
[dmdba@DMDB1 ~]$ ps -ef |grep dmserver
dmdba 3785 3708 0 10:56 pts/0 00:00:00 grep dmserver
## 4.2 dmrman冷備主庫
[dmdba@DMDB1 ~]$ dmrman CTLSTMT="BACKUP DATABASE '/DMDB/data/dmdb/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/DMDB/backup/BACKUP_FILE_01'"
dmrman V8
BACKUP DATABASE '/DMDB/data/dmdb/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/DMDB/backup/BACKUP_FILE_01'
file dm.key not found, use default license!
Database mode = 0, oguid = 0
EP[0]'s cur_lsn[37090]
BACKUP DATABASE [dmdb],execute......
CMD CHECK LSN......
BACKUP DATABASE [dmdb],collect dbf......
CMD CHECK ......
DBF BACKUP SUBS......
total 1 packages processed...
total 2 packages processed...
total 3 packages processed...
DBF BACKUP MAIN......
BACKUPSET [/DMDB/backup/BACKUP_FILE_01] END, CODE [0]......
META GENERATING......
total 7 packages processed...
total 7 packages processed...
total 7 packages processed!
CMD END.CODE:[0]
backup successfully!
time used: 00:00:01.502
## 4.3 確認備份成功
[dmdba@DMDB1 ~]$ cd /DMDB/backup/
[dmdba@DMDB1 backup]$ ls -l
總用量 4
drwxr-xr-x 2 dmdba dinstall 4096 12月 2 11:00 BACKUP_FILE_01
[dmdba@DMDB1 backup]$ du -sh BACKUP_FILE_01
6.2M BACKUP_FILE_01
## 4.4 遠程拷貝備份到DMDB2機器
[dmdba@DMDB1 backup]$ scp -rp BACKUP_FILE_01/ 192.168.0.12:/DMDB/backup
The authenticity of host '192.168.0.12 (192.168.0.12)' can't be established.
RSA key fingerprint is db:a7:63:d0:23:cd:29:1f:1b:ab:53:8f:04:9a:d4:d9.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.12' (RSA) to the list of known hosts.
dmdba@192.168.0.12's password:
BACKUP_FILE_01.meta 100% 73KB 72.5KB/s 00:00
BACKUP_FILE_01.bak 100% 6246KB 6.1MB/s 00:00
5. 初始化資料庫備庫
## 5.1 初始化備庫:庫名 dmdb 實體名:GRP1_RT_02
[dmdba@DMDB2 ~]$ dminit PATH=/DMDB/data DB_NAME=dmdb INSTANCE_NAME=GRP1_RT_02
initdb V8
db version: 0x7000b
License will expire on 2021-06-25
log file path: /DMDB/data/dmdb/dmdb01.log
log file path: /DMDB/data/dmdb/dmdb02.log
write to dir [/DMDB/data/dmdb].
create dm database success. 2020-12-02 11:15:13
## 5.2 注冊資料庫實體的服務
[root@DMDB2 ~]# /DMDB/app/DM8/script/root/dm_service_installer.sh -t dmserver -dm_ini /DMDB/data/dmdb/dm.ini -p GRP1_RT_02
移動服務腳本檔案(/DMDB/app/DM8/bin/DmServiceGRP1_RT_02 到 /etc/rc.d/init.d/DmServiceGRP1_RT_02)
創建服務(DmServiceGRP1_RT_02)完成
[root@DMDB2 ~]# chkconfig --list | grep -i dm
DmAPService 0:關閉 1:關閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關閉
DmServiceGRP1_RT_02 0:關閉 1:關閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關閉
mdmonitor 0:關閉 1:關閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關閉
nfs-rdma 0:關閉 1:關閉 2:關閉 3:關閉 4:關閉 5:關閉 6:關閉
rdma 0:關閉 1:關閉 2:關閉 3:關閉 4:關閉 5:關閉 6:關閉
[root@DMDB2 ~]# service DmServiceGRP1_RT_02 start
Starting DmServiceGRP1_RT_02: [ OK ]
6. 備庫脫機還原主庫資料
### 6.1 停備庫
[root@DMDB2 ~]# service DmServiceGRP1_RT_02 stop
Stopping DmServiceGRP1_RT_02: [ OK ]
### 6.2 開始脫機資料庫還原和恢復
# 還原
[dmdba@DMDB2 ~]$ dmrman CTLSTMT="RESTORE DATABASE '/DMDB/data/dmdb/dm.ini' FROM BACKUPSET '/DMDB/backup/BACKUP_FILE_01'"
dmrman V8
RESTORE DATABASE '/DMDB/data/dmdb/dm.ini' FROM BACKUPSET '/DMDB/backup/BACKUP_FILE_01'
RESTORE DATABASE CHECK......
RESTORE DATABASE,data collect......
RESTORE DATABASE,database refresh ......
RESTORE BACKUPSET [/DMDB/backup/BACKUP_FILE_01] 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.216
# 恢復
[dmdba@DMDB2 ~]$ dmrman CTLSTMT="RECOVER DATABASE '/DMDB/data/dmdb/dm.ini' FROM BACKUPSET '/DMDB/backup/BACKUP_FILE_01'"
dmrman V8
RECOVER DATABASE '/DMDB/data/dmdb/dm.ini' FROM BACKUPSET '/DMDB/backup/BACKUP_FILE_01'
Database mode = 0, oguid = 0
EP[0]'s cur_lsn[37090]
RESTORE RLOG CHECK......
CMD END.CODE:[603],DESC:[備份集[/DMDB/backup/BACKUP_FILE_01]備份程序中未產生日志]
備份集[/DMDB/backup/BACKUP_FILE_01]備份程序中未產生日志
recover successfully!
time used: 475.993(ms)
# 更新同步魔數
[dmdba@DMDB2 ~]$ dmrman CTLSTMT="RECOVER DATABASE '/DMDB/data/dmdb/dm.ini' UPDATE DB_MAGIC"
dmrman V8
RECOVER DATABASE '/DMDB/data/dmdb/dm.ini' UPDATE DB_MAGIC
Database mode = 0, oguid = 0
EP[0]'s cur_lsn[37090]
EP[0]'s apply_lsn[37090] >= end_lsn[37090]
recover successfully!
time used: 00:00:01.024
### 6.3 檢查主庫與備庫之間的資料一致性
## 6.3.1 主備庫兩個實體分別以mount方式啟動
[dmdba@DMDB1 dmdb]$ dmserver /DMDB/data/dmdb/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 = 0, oguid = 0
License will expire on 2021-09-04
file lsn: 37090
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@DMDB2 ~]$ dmserver /DMDB/data/dmdb/dm.ini mount
version info: security
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-06-25
file lsn: 37090
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.
## 6.3.2 對比主庫與備庫之間的魔數
[dmdba@DMDB1 ~]$ disql SYSDBA/SYSDBA
服務器[LOCALHOST:5236]:處于普通配置狀態
登錄使用時間 : 8.820(ms)
disql V8
SQL> select file_LSN, cur_LSN from v$rlog;
行號 FILE_LSN CUR_LSN
---------- -------------------- --------------------
1 37090 37090
已用時間: 6.816(毫秒). 執行號:0.
SQL> select permanent_magic;
行號 PERMANENT_MAGIC
---------- ---------------
1 738069168
已用時間: 2.936(毫秒). 執行號:1.
[root@DMDB1 ~]# su - dmdba
[dmdba@DMDB1 ~]$ disql SYSDBA/SYSDBA
服務器[LOCALHOST:5236]:處于普通配置狀態
登錄使用時間 : 6.145(ms)
disql V8
SQL> select file_lsn,cur_lsn from v$rlog;
行號 FILE_LSN CUR_LSN
---------- -------------------- --------------------
1 37090 37090
已用時間: 4.530(毫秒). 執行號:100.
SQL> select permanent_magic;
行號 PERMANENT_MAGIC
---------- ---------------
1 738069168
已用時間: 0.684(毫秒). 執行號:10
7. 配置主備庫(引數檔案)
7.1 配置dm.ini
主庫
INSTANCE_NAME = GRP1_RT_01 # 實體名 "組名_守護環境_序號", 字符總長度不超過16個字符
PORT_NUM = 5236 #資料庫實體監聽埠
DW_PORT = 5336 #守護環境下,監聽守護行程連接請求埠
DW_INACTIVE_INTERVAL = 60 #接收守護行程訊息超時時間
ALTER_MODE_STATUS = 0 #不允許手工方式修改實體模式/狀態/OGUID
ENABLE_OFFLINE_TS = 2 #不允許備庫OFFLINE表空間
MAL_INI = 1 #打開MAL系統
ARCH_INI = 1 #打開歸檔配置
#HA_INST_CHECK_FLAG = 1 #檢測是否多個實體行程同時啟動
RLOG_SEND_APPLY_MON = 64 #統計最近64次的日志發送資訊
備庫
INSTANCE_NAME = GRP1_RT_02
PORT_NUM = 5237 #資料庫實體監聽埠
DW_PORT = 5337 #守護環境下,監聽守護行程連接埠
DW_INACTIVE_INTERVAL = 60 #接收守護行程訊息超時時間
ALTER_MODE_STATUS = 0 #不允許手工方式修改實體模式/狀態/OGUID
ENABLE_OFFLINE_TS = 2 #不允許備庫OFFLINE表空間
MAL_INI = 1 #打開MAL系統
ARCH_INI = 1 #打開歸檔配置
#HA_INST_CHECK_FLAG = 1 #檢測是否多個實體行程同時啟動
RLOG_SEND_APPLY_MON = 64 #統計最近64次的日志重演資訊
7.2 配置dmmal.ini
主庫/備庫
MAL_CHECK_INTERVAL = 5 #MAL鏈路檢測的時間間隔
MAL_CONN_FAIL_INTERVAL = 5 #判定MAL鏈路斷開的時間
[MAL_INST1]
MAL_INST_NAME = GRP1_RT_01 #實體名,和dm.ini中的INSTANCE_NAME一致
MAL_HOST = 10.10.10.11 #MAL系統監聽TCP連接的IP地址
MAL_PORT = 5436 #MAL系統監聽TCP連接的埠
MAL_INST_HOST = 192.168.0.11 #實體的對外服務IP地址
MAL_INST_PORT = 5236 #實體的對外服務埠,和dm.ini中的PORT_NUM一致
MAL_DW_PORT = 5536 #實體本地守護行程監聽TCP連接的埠
MAL_INST_DW_PORT = 5336 #節點實體監聽守護行程TCP連接的埠. 各個實體守護行程與監視器之間通信埠.
[MAL_INST2]
MAL_INST_NAME = GRP1_RT_02
MAL_HOST = 10.10.10.12
MAL_PORT = 5437
MAL_INST_HOST = 192.168.0.12
MAL_INST_PORT = 5237
MAL_DW_PORT = 5537
MAL_INST_DW_PORT = 5337
7.3 配置dmarch.ini
主庫
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #實時歸檔型別
ARCH_DEST = GRP1_RT_02 #實時歸檔目標實體名,即遠程歸檔到備庫,向GRP1_RT_02實體同步資料
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地歸檔型別
ARCH_DEST = /DMDB/arch #本地歸檔檔案存放路徑
ARCH_FILE_SIZE = 128 #單位 Mb,本地單個歸檔檔案最大值
ARCH_SPACE_LIMIT = 0 #單位 Mb,0表示無限制,范圍 1024~4294967294M
備庫
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #實時歸檔型別
ARCH_DEST = GRP1_RT_01 #實時歸檔目標實體名,即遠程歸檔到備庫,向GRP1_RT_01實體同步資料,兩者互為主備庫,在故障出現時,
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地歸檔型別
ARCH_DEST = /DMDB/arch #本地歸檔檔案存放路徑
ARCH_FILE_SIZE = 128 #單位 Mb,本地單個歸檔檔案最大值
ARCH_SPACE_LIMIT = 0 #單位 Mb,0表示無限制,范圍 1024~4294967294M
7.4 配置dmwatcher.ini
全域守護型別,自動切換模式
主庫
[GRP1]
DW_TYPE = GLOBAL #全域守護型別
DW_MODE = AUTO #自動切換模式,切記:這個開啟一定要配置確認監視器
DW_ERROR_TIME = 10 #遠程守護行程故障認定時間
INST_RECOVER_TIME = 60 #主庫守護行程啟動恢復的間隔時間
INST_ERROR_TIME = 10 #本地實體故障認定時間
INST_OGUID = 453331 #守護系統唯一OGUID值
INST_INI = /DMDB/data/dmdb/dm.ini #dm.ini組態檔路徑
INST_AUTO_RESTART = 1 #打開實體的自動啟動功能
INST_STARTUP_CMD = /DMDB/app/DM8/bin/dmserver #命令列方式啟動
RLOG_SEND_THRESHOLD = 0 #指定主庫發送日志到備庫的時間閾值,默認關閉
RLOG_APPLY_THRESHOLD = 0 #指定備庫重演日志的時間閾值,默認關閉
備庫
[GRP1]
DW_TYPE = GLOBAL #全域守護型別
DW_MODE = AUTO #自動切換模式,切記:這個開啟一定要配置確認監視器
DW_ERROR_TIME = 10 #遠程守護行程故障認定時間
INST_RECOVER_TIME = 60 #主庫守護行程啟動恢復的間隔時間
INST_ERROR_TIME = 10 #本地實體故障認定時間
INST_OGUID = 453331 #守護系統唯一OGUID值
INST_INI = /DMDB/data/dmdb/dm.ini #dm.ini組態檔路徑
INST_AUTO_RESTART = 1 #打開實體的自動啟動功能
INST_STARTUP_CMD = /DMDB/app/DM8/bin/dmserver #命令列方式啟動
RLOG_SEND_THRESHOLD = 0 #指定主庫發送日志到備庫的時間閾值,默認關閉
RLOG_APPLY_THRESHOLD = 0 #指定備庫重演日志的時間閾值,默認關閉
配置dmwatcher.ctl (可選)
同一個守護行程組,必須使用同一份 dmwatcher.ctl,拷貝到各個資料庫的資料目錄下,
dmctlcvt TYPE=3 SRC=/DMDB/data/dmdb/dmwatcher.ini DEST=/DMDB/data/dmdb
cp /DMDB/data/dmdb/GRP1/dmwatcher.ctl /DMDB/data/dmdb
7.5 配置監視器 dmmonitor.ini (監視器主機)
確認監視器:確認監視器除了相同的命令支持外,在主庫發生故障時,能夠自動通知實時備庫接管為新的主庫,具有自動故障處理的功能,
故障自動切換模式下,必須配置確認監視器,并且確認監視器最多僅能配置一個,
MON_DW_CONFIRM = 1 #確認監視器模式
MON_LOG_PATH = /DMDB/data/log #監視器日志檔案存放路徑
MON_LOG_INTERVAL = 60 #每隔60s定時記錄系統資訊到日志檔案
MON_LOG_FILE_SIZE = 32 #每個日志檔案最大32M
MON_LOG_SPACE_LIMIT = 0 #不限定日志檔案總占用空間
[GRP1]
MON_INST_OGUID = 453331 #組GRP1的唯一OGUID值
#以下配置為監視器到組GRP1的守護行程的連接資訊,以"IP:PORT"的形式配置
#IP對應dmmal.ini中的MAL_HOST,PORT對應dmmal.ini中的MAL_DW_PORT
MON_DW_IP = 10.10.10.11:5536
MON_DW_IP = 10.10.10.12:5537
8. 啟動主備庫設定OGUID
### 8.1 主庫
# mount方式啟動
[dmdba@DMDB1 dmdb]$ dmserver /DMDB/data/dmdb/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 = 0, oguid = 0
License will expire on 2021-09-04
begin redo pwr log collect, last ckpt lsn: 37090 ...
redo pwr log collect finished
main rfil[/DMDB/data/dmdb/dmdb01.log]'s grp collect 0 valid pwr record, discard 0 invalid pwr record
EP[0]'s cur_lsn[37090]
begin redo log recover, last ckpt lsn: 37090 ...
redo log recover finished
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.
#系統通過OGUID 值確定一個守護行程組,由用戶保證 OGUID 值的唯一性,
#并確保資料守護系統中,資料庫、守護行程和監視器配置相同的OGUID值,
[root@DMDB1 ~]# su - dmdba
[dmdba@DMDB1 ~]$ disql SYSDBA/SYSDBA
服務器[LOCALHOST:5236]:處于普通配置狀態
登錄使用時間 : 5.938(ms)
disql V8
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
DMSQL 程序已成功完成
已用時間: 25.411(毫秒). 執行號:0.
SQL> sp_set_oguid(453331);
DMSQL 程序已成功完成
已用時間: 43.392(毫秒). 執行號:1.
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
DMSQL 程序已成功完成
已用時間: 12.588(毫秒). 執行號:2.
### 8.2 備庫
# mount方式啟動
#一定要以mount方式啟動資料庫實體,否則系統啟動時會重構回滾表空間,生成Redo日志;
#并且,啟動后應用可能連接到資料庫實體進行操作,破壞主備庫的資料一致性,資料守護配置結束后,守護行程會自動Open資料庫,
[dmdba@DMDB2 dmdb]$ dmserver /DMDB/data/dmdb/dm.ini mount
version info: security
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-06-25
begin redo pwr log collect, last ckpt lsn: 37090 ...
redo pwr log collect finished
main rfil[/DMDB/data/dmdb/dmdb01.log]'s grp collect 0 valid pwr record, discard 0 invalid pwr record
EP[0]'s cur_lsn[37090]
begin redo log recover, last ckpt lsn: 37090 ...
redo log recover finished
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@DMDB2 ~]$ disql SYSDBA/SYSDBA@localhost:5237
notBefore.
notAfter error.
notAfter error.
服務器[localhost:5237]:處于普通配置狀態
登錄使用時間 : 16.602(ms)
上次登錄ip : ::1
上次登錄時間 : 2020-12-02 10:50:49
登錄失敗次數 : 0
口令是否過期 : 未過期
disql V8
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
DMSQL 程序已成功完成
已用時間: 19.704(毫秒). 執行號:0.
SQL> sp_set_oguid(453331);
DMSQL 程序已成功完成
已用時間: 8.817(毫秒). 執行號:1.
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
DMSQL 程序已成功完成
已用時間: 13.194(毫秒). 執行號:2
9. 修改資料庫模式 (可與8步驟濃縮為一個步驟)
### 9.1 主庫
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL> ALTER DATABASE PRIMARY;
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
### 9.2 備庫
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL> ALTER DATABASE STANDBY;
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
10. 啟動守護行程
## 主庫
#守護行程啟動后,進入Startup狀態,此時實體都處于Mount狀態,
#守護行程開始廣播自身和其監控實體的狀態資訊,結合自身資訊和遠程守護行程的廣播資訊,
#守護行程將本地實體Open,并切換為Open狀態,
[dmdba@DMDB1 dmdb]$ dmwatcher /DMDB/data/dmdb/dmwatcher.ini
DMWATCHER[4.0] V8
DMWATCHER[4.0] IS READY
## 備庫
[dmdba@DMDB2 ~]$ dmwatcher /DMDB/data/dmdb/dmwatcher.ini
DMWATCHER[4.0] V8
DMWATCHER[4.0] IS READY
# 查看守護行程實體的狀態
SQL> select GROUP_NAME,INST_NAME,DW_TYPE,DW_MODE,DW_STATUS from V$DMWATCHER;
行號 GROUP_NAME INST_NAME DW_TYPE DW_MODE DW_STATUS
---------- ---------- ---------- ------- ------- ---------
1 GRP1 GRP1_RT_01 GLOBAL AUTO OPEN
SQL> select GROUP_NAME,INST_NAME,DW_TYPE,DW_MODE,DW_STATUS from V$DMWATCHER;
行號 GROUP_NAME INST_NAME DW_TYPE DW_MODE DW_STATUS
---------- ---------- ---------- ------- ------- ---------
1 GRP1 GRP1_RT_02 GLOBAL AUTO OPEN
11. 啟動監視器
[dmdba@DMDB3 DAMENG]$ dmmonitor /DMDB/data/DAMENG/dmmonitor.ini
[monitor] 2020-12-02 15:34:09: DMMONITOR[4.0] V8
[monitor] 2020-12-02 15:34:09: DMMONITOR[4.0] IS READY.
[monitor] 2020-12-02 15:34:09: 收到守護行程(GRP1_RT_01)訊息
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 15:34:08 OPEN OK GRP1_RT_01 OPEN PRIMARY VALID 2 38352 38352
[monitor] 2020-12-02 15:34:09: 收到守護行程(GRP1_RT_02)訊息
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 15:34:10 OPEN OK GRP1_RT_02 OPEN STANDBY VALID 2 38352 38352
help
達夢守護監視器當前支持以下命令:
用法說明:
命令中的[group_name]和[db_name],在組名或庫名不唯一的情況下,需要指定名稱,組名和庫名之間用'.'分隔.
對于show monitor命令,如果db_name未指定,則按照監視器ini的配置順序,使用組中第一個活動的守護行程獲取連接資訊,
#=============================================================================================#
#-----------------------------------系統全域命令----------------------------------------------#
1.help --顯示幫助資訊
2.exit --退出監視器
3.show version --顯示監視器自身版本資訊
4.show global info --顯示所有組的全域資訊
5.show database [group_name.]db_name --顯示指定庫的詳細資訊
6.show [group_name] --顯示指定組的詳細資訊,如果未指定組名,則顯示所有組的詳細資訊
7.show i[nterval] n --每隔n秒自動顯示所有組的詳細資訊
8.q --取消自動顯示
9.list [[group_name.]db_name] --列出指定組的庫對應的守護行程配置資訊,如果都未指定,則列出所有守護行程配置資訊
10.show open info [group_name.]db_name --顯示指定庫的OPEN歷史資訊
11.show arch send info [group_name.]db_name --查看源庫到指定組的指定庫的歸檔同步資訊(包含恢復間隔資訊)
12.show apply stat [group_name.]db_name --查看指定組的指定庫的日志重演資訊
13.show monitor [group_name[.]] [db_name] --列出連接到指定守護行程的所有監視器資訊
14.tip --查看系統當前運行狀態
15.login --登錄監視器
16.logout --退出登錄
17.get takeover time --獲取備庫開始自動接管需要延遲等待的時間
---輸入q/Q退出或者回車鍵繼續---
show
2020-12-02 15:37:20
#================================================================================#
GROUP OGUID MON_CONFIRM MODE MPP_FLAG
GRP1 453331 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.11 5536 2020-12-02 15:37:18 GLOBAL VALID OPEN GRP1_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 GRP1_RT_01 OPEN PRIMARY 0 0 REALTIME VALID 3933 38352 3933 38352 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.12 5537 2020-12-02 15:37:21 GLOBAL VALID OPEN GRP1_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
5237 OK GRP1_RT_02 OPEN STANDBY 0 0 REALTIME VALID 3927 38352 3927 38352 NONE
DATABASE(GRP1_RT_02) APPLY INFO FROM (GRP1_RT_01):
DSC_SEQNO[0], (ASEQ, SSEQ, KSEQ)[3933, 3933, 3933], (ALSN, SLSN, KLSN)[38352, 38352, 38352], N_TSK[0], TSK_MEM_USE[0]
#================================================================================#
12. 注冊服務(root用戶操作)
### 12.1 守護行程服務
# 主庫
/DMDB/app/DM8/script/root/dm_service_installer.sh -t dmwatcher -watcher_ini /DMDB/data/dmdb/dmwatcher.ini -p DW1
# 備庫
/DMDB/app/DM8/script/root/dm_service_installer.sh -t dmwatcher -watcher_ini /DMDB/data/dmdb/dmwatcher.ini -p DW2
### 12.2 監視器服務
# 監視器主機
/DMDB/app/DM8/script/root/dm_service_installer.sh -t dmmonitor -monitor_ini /DMDB/data/DAMENG/dmmonitor.ini -p MON1
13. 測驗主庫插入資料后是否同步到備庫
## 主庫準備測驗資料
[dmdba@DMDB1 ~]$ disql SYSDBA/SYSDBA
服務器[LOCALHOST:5236]:處于主庫打開狀態
登錄使用時間 : 6.784(ms)
disql V8
SQL> create table dmfs as select * from sysobjects;
操作已執行
已用時間: 23.862(毫秒). 執行號:705.
SQL> select count(1) from dmfs;
行號 COUNT(1)
---------- --------------------
1 1340
用時間: 3.975(毫秒). 執行號:706.
## 備庫查詢,是否應用主庫最新的日志
[dmdba@DMDB2 ~]$ disql SYSDBA/SYSDBA@LOCALHOST:5237
notBefore.
notAfter error.
notAfter error.
服務器[LOCALHOST:5237]:處于備庫打開狀態
登錄使用時間 : 17.063(ms)
上次登錄ip : ::1
上次登錄時間 : 2020-12-02 15:56:15
登錄失敗次數 : 0
口令是否過期 : 未過期
disql V8
SQL> select count(1) from dmfs;
行號 COUNT(1)
---------- --------------------
1 1340
已用時間: 8.217(毫秒). 執行號:600
## 驗證備庫不能做資料修改
SQL> create table dmfs2 as select * from sysobjects;
create table dmfs2 as select * from sysobjects;
[-710]:試圖在STANDBY模式下,修改用戶庫.
已用時間: 5.986(毫秒). 執行號:0.
14. 測驗資料庫服務持續可用性
### 14.1 模擬服務器斷電
# 主庫節點DMDB1
shutdown -h now
### 14.2 檢查監視器狀態
show global info
2020-12-02 16:05:29
#================================================================================#
GROUP OGUID MON_CONFIRM MODE MPP_FLAG
GRP1 453331 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.12 5537 2020-12-02 16:05:31 GLOBAL VALID OPEN GRP1_RT_02 OK 1 1 OPEN STANDBY DSC_OPEN REALTIME VALID
ERROR DATABASE:
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 2020-12-02 16:05:16 GLOBAL VALID ERROR GRP1_RT_01 OK 1 1 OPEN PRIMARY DSC_OPEN REALTIME VALID
#================================================================================#
[monitor] 2020-12-02 16:05:38: 檢測到PRIMARY實體故障,開始對組(GRP1)執行自動接管
[monitor] 2020-12-02 16:05:38: 通知組(GRP1)當前活動的守護行程設定MID
[monitor] 2020-12-02 16:05:38: 通知組(GRP1)當前活動的守護行程設定MID成功
[monitor] 2020-12-02 16:05:38: 開始使用實體GRP1_RT_02接管
[monitor] 2020-12-02 16:05:38: 通知守護行程GRP1_RT_02切換TAKEOVER狀態
[monitor] 2020-12-02 16:05:38: 守護行程(GRP1_RT_02)狀態切換 [OPEN-->TAKEOVER]
[monitor] 2020-12-02 16:05:38: 切換守護行程GRP1_RT_02為TAKEOVER狀態成功
[monitor] 2020-12-02 16:05:38: 實體GRP1_RT_02開始執行SP_SET_GLOBAL_DW_STATUS(0, 7)陳述句
[monitor] 2020-12-02 16:05:38: 實體GRP1_RT_02執行SP_SET_GLOBAL_DW_STATUS(0, 7)陳述句成功
[monitor] 2020-12-02 16:05:38: 實體GRP1_RT_02開始執行SP_APPLY_KEEP_PKG()陳述句
[monitor] 2020-12-02 16:05:39: 實體GRP1_RT_02執行SP_APPLY_KEEP_PKG()陳述句成功
[monitor] 2020-12-02 16:05:39: 實體GRP1_RT_02開始執行ALTER DATABASE MOUNT陳述句
[monitor] 2020-12-02 16:05:40: 實體GRP1_RT_02執行ALTER DATABASE MOUNT陳述句成功
[monitor] 2020-12-02 16:05:40: 實體GRP1_RT_02開始執行ALTER DATABASE PRIMARY陳述句
[monitor] 2020-12-02 16:05:41: 實體GRP1_RT_02執行ALTER DATABASE PRIMARY陳述句成功
[monitor] 2020-12-02 16:05:44: 通知實體GRP1_RT_02修改所有歸檔狀態無效
[monitor] 2020-12-02 16:05:44: 修改所有實體歸檔為無效狀態成功
[monitor] 2020-12-02 16:05:44: 實體GRP1_RT_02開始執行ALTER DATABASE OPEN FORCE陳述句
[monitor] 2020-12-02 16:05:46: 實體GRP1_RT_02執行ALTER DATABASE OPEN FORCE陳述句成功
[monitor] 2020-12-02 16:05:46: 實體GRP1_RT_02開始執行SP_SET_GLOBAL_DW_STATUS(7, 0)陳述句
[monitor] 2020-12-02 16:05:46: 實體GRP1_RT_02執行SP_SET_GLOBAL_DW_STATUS(7, 0)陳述句成功
[monitor] 2020-12-02 16:05:46: 通知守護行程GRP1_RT_02切換OPEN狀態
[monitor] 2020-12-02 16:05:46: 守護行程(GRP1_RT_02)狀態切換 [TAKEOVER-->OPEN]
[monitor] 2020-12-02 16:05:46: 切換守護行程GRP1_RT_02為OPEN狀態成功
[monitor] 2020-12-02 16:05:46: 通知組(GRP1)的守護行程執行清理操作
[monitor] 2020-12-02 16:05:46: 清理守護行程(GRP1_RT_02)請求成功
[monitor] 2020-12-02 16:05:46: 使用實體GRP1_RT_02接管成功
[monitor] 2020-12-02 16:05:46: 組(GRP1)使用實體GRP1_RT_02自動接管成功
show
2020-12-02 16:09:57
#================================================================================#
GROUP OGUID MON_CONFIRM MODE MPP_FLAG
GRP1 453331 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.12 5537 2020-12-02 16:09:58 GLOBAL VALID OPEN GRP1_RT_02 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
5237 OK GRP1_RT_02 OPEN PRIMARY 0 0 REALTIME VALID 3945 39941 3945 39941 NONE
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.11 5536 2020-12-02 16:05:16 GLOBAL VALID ERROR GRP1_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 GRP1_RT_01 OPEN PRIMARY 0 0 REALTIME VALID 3943 38583 3943 38583 NONE
#================================================================================#
開機DMDB1,讓其自動恢復加入資料守護集群,
開機自啟動資料庫各服務:輔助服務、資料庫實體服務、資料守護服務
[root@DMDB1 ~]# ps -fu dmdba
UID PID PPID C STIME TTY TIME CMD
dmdba 2332 1 0 16:15 ? 00:00:00 /DMDB/app/DM8/bin/dmap
dmdba 2389 1 1 16:15 ? 00:00:08 /DMDB/app/DM8/bin/dmserver /DMDB/data/dmdb/dm.ini -noconsole
dmdba 2512 1 0 16:15 ? 00:00:02 /DMDB/app/DM8/bin/dmwatcher /DMDB/data/dmdb/dmwatcher.ini
# 監視器情況
[monitor] 2020-12-02 16:16:02: 守護行程(GRP1_RT_01)狀態切換 [NONE-->STARTUP]
[monitor] 2020-12-02 16:16:02: 守護行程(GRP1_RT_01)狀態切換 [STARTUP-->UNIFY EP]
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 16:16:01 UNIFY EP OK GRP1_RT_01 MOUNT PRIMARY VALID 2 38583 38583
[monitor] 2020-12-02 16:16:02: 守護行程(GRP1_RT_01)狀態切換 [UNIFY EP-->STARTUP]
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 16:16:01 STARTUP OK GRP1_RT_01 MOUNT STANDBY INVALID 2 38583 38583
[monitor] 2020-12-02 16:16:02: 守護行程(GRP1_RT_01)狀態切換 [STARTUP-->UNIFY EP]
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 16:16:01 UNIFY EP OK GRP1_RT_01 MOUNT STANDBY INVALID 2 38583 38583
[monitor] 2020-12-02 16:16:02: 守護行程(GRP1_RT_01)狀態切換 [UNIFY EP-->STARTUP]
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 16:16:01 STARTUP OK GRP1_RT_01 OPEN STANDBY INVALID 2 38583 38583
[monitor] 2020-12-02 16:16:02: 守護行程(GRP1_RT_01)狀態切換 [STARTUP-->OPEN]
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 16:16:02 OPEN OK GRP1_RT_01 OPEN STANDBY INVALID 2 38583 38583
[monitor] 2020-12-02 16:16:02: 守護行程(GRP1_RT_02)狀態切換 [OPEN-->RECOVERY]
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 16:16:04 RECOVERY OK GRP1_RT_02 OPEN PRIMARY VALID 3 39941 39941
[monitor] 2020-12-02 16:16:06: 守護行程(GRP1_RT_02)狀態切換 [RECOVERY-->OPEN]
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 16:16:08 OPEN OK GRP1_RT_02 OPEN PRIMARY VALID 3 39941 39941
show
2020-12-02 16:26:02
#================================================================================#
GROUP OGUID MON_CONFIRM MODE MPP_FLAG
GRP1 453331 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.12 5537 2020-12-02 16:26:03 GLOBAL VALID OPEN GRP1_RT_02 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
5237 OK GRP1_RT_02 OPEN PRIMARY 0 0 REALTIME VALID 3945 39941 3945 39941 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 2020-12-02 16:26:00 GLOBAL VALID OPEN GRP1_RT_01 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 GRP1_RT_01 OPEN STANDBY 0 0 REALTIME VALID 3943 39941 3943 39941 NONE
DATABASE(GRP1_RT_01) APPLY INFO FROM (GRP1_RT_02):
DSC_SEQNO[0], (ASEQ, SSEQ, KSEQ)[3945, 3945, 3945], (ALSN, SLSN, KLSN)[39941, 39941, 39941], N_TSK[0], TSK_MEM_USE[0]
show global info
2020-12-02 16:26:17
#================================================================================#
GROUP OGUID MON_CONFIRM MODE MPP_FLAG
GRP1 453331 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.12 5537 2020-12-02 16:26:18 GLOBAL VALID OPEN GRP1_RT_02 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 2020-12-02 16:26:16 GLOBAL VALID OPEN GRP1_RT_01 OK 1 1 OPEN STANDBY DSC_OPEN REALTIME VALID
#================================================================================#
SQL> select decode(role$,1,'PRI',role$),decode(STATUS$,4,'open',3,'mount',5,'supend') from v$database;
行號 DECODE("ROLE$",1,'PRI',"ROLE$") DECODE("STATUS$",4,'open',3,'mount',5,'supend')
---------- ------------------------------- -----------------------------------------------
1 PRI open
15. 手動切換主備集群
恢復GRP1_RT_01實體為主庫
## 在監視器主機環境
#================================================================================#
switchover
[monitor] 2020-12-02 16:34:29: 開始切換實體GRP1_RT_01
[monitor] 2020-12-02 16:34:29: 通知守護行程GRP1_RT_02切換SWITCHOVER狀態
[monitor] 2020-12-02 16:34:29: 守護行程(GRP1_RT_02)狀態切換 [OPEN-->SWITCHOVER]
[monitor] 2020-12-02 16:34:29: 切換守護行程GRP1_RT_02為SWITCHOVER狀態成功
[monitor] 2020-12-02 16:34:29: 通知守護行程GRP1_RT_01切換SWITCHOVER狀態
[monitor] 2020-12-02 16:34:29: 守護行程(GRP1_RT_01)狀態切換 [OPEN-->SWITCHOVER]
[monitor] 2020-12-02 16:34:29: 切換守護行程GRP1_RT_01為SWITCHOVER狀態成功
[monitor] 2020-12-02 16:34:29: 實體GRP1_RT_02開始執行SP_SET_GLOBAL_DW_STATUS(0, 6)陳述句
[monitor] 2020-12-02 16:34:29: 實體GRP1_RT_02執行SP_SET_GLOBAL_DW_STATUS(0, 6)陳述句成功
[monitor] 2020-12-02 16:34:29: 實體GRP1_RT_01開始執行SP_SET_GLOBAL_DW_STATUS(0, 6)陳述句
[monitor] 2020-12-02 16:34:30: 實體GRP1_RT_01執行SP_SET_GLOBAL_DW_STATUS(0, 6)陳述句成功
[monitor] 2020-12-02 16:34:30: 實體GRP1_RT_02開始執行ALTER DATABASE MOUNT陳述句
[monitor] 2020-12-02 16:34:31: 實體GRP1_RT_02執行ALTER DATABASE MOUNT陳述句成功
[monitor] 2020-12-02 16:34:31: 實體GRP1_RT_01開始執行SP_APPLY_KEEP_PKG()陳述句
[monitor] 2020-12-02 16:34:32: 實體GRP1_RT_01執行SP_APPLY_KEEP_PKG()陳述句成功
[monitor] 2020-12-02 16:34:32: 實體GRP1_RT_01開始執行ALTER DATABASE MOUNT陳述句
[monitor] 2020-12-02 16:34:33: 實體GRP1_RT_01執行ALTER DATABASE MOUNT陳述句成功
[monitor] 2020-12-02 16:34:33: 實體GRP1_RT_02開始執行ALTER DATABASE STANDBY陳述句
[monitor] 2020-12-02 16:34:33: 實體GRP1_RT_02執行ALTER DATABASE STANDBY陳述句成功
[monitor] 2020-12-02 16:34:33: 實體GRP1_RT_01開始執行ALTER DATABASE PRIMARY陳述句
[monitor] 2020-12-02 16:34:34: 實體GRP1_RT_01執行ALTER DATABASE PRIMARY陳述句成功
[monitor] 2020-12-02 16:34:34: 通知實體GRP1_RT_01修改所有歸檔狀態無效
[monitor] 2020-12-02 16:34:34: 修改所有實體歸檔為無效狀態成功
[monitor] 2020-12-02 16:34:34: 實體GRP1_RT_02開始執行ALTER DATABASE OPEN FORCE陳述句
[monitor] 2020-12-02 16:34:34: 實體GRP1_RT_02執行ALTER DATABASE OPEN FORCE陳述句成功
[monitor] 2020-12-02 16:34:34: 實體GRP1_RT_01開始執行ALTER DATABASE OPEN FORCE陳述句
[monitor] 2020-12-02 16:34:36: 實體GRP1_RT_01執行ALTER DATABASE OPEN FORCE陳述句成功
[monitor] 2020-12-02 16:34:36: 實體GRP1_RT_02開始執行SP_SET_GLOBAL_DW_STATUS(6, 0)陳述句
[monitor] 2020-12-02 16:34:36: 實體GRP1_RT_02執行SP_SET_GLOBAL_DW_STATUS(6, 0)陳述句成功
[monitor] 2020-12-02 16:34:36: 實體GRP1_RT_01開始執行SP_SET_GLOBAL_DW_STATUS(6, 0)陳述句
[monitor] 2020-12-02 16:34:36: 實體GRP1_RT_01執行SP_SET_GLOBAL_DW_STATUS(6, 0)陳述句成功
[monitor] 2020-12-02 16:34:36: 通知守護行程GRP1_RT_02切換OPEN狀態
[monitor] 2020-12-02 16:34:36: 守護行程(GRP1_RT_02)狀態切換 [SWITCHOVER-->OPEN]
[monitor] 2020-12-02 16:34:36: 切換守護行程GRP1_RT_02為OPEN狀態成功
[monitor] 2020-12-02 16:34:36: 通知守護行程GRP1_RT_01切換OPEN狀態
[monitor] 2020-12-02 16:34:36: 守護行程(GRP1_RT_01)狀態切換 [SWITCHOVER-->OPEN]
[monitor] 2020-12-02 16:34:36: 切換守護行程GRP1_RT_01為OPEN狀態成功
[monitor] 2020-12-02 16:34:36: 通知組(GRP1)的守護行程執行清理操作
[monitor] 2020-12-02 16:34:36: 清理守護行程(GRP1_RT_01)請求成功
[monitor] 2020-12-02 16:34:36: 清理守護行程(GRP1_RT_02)請求成功
[monitor] 2020-12-02 16:34:36: 實體GRP1_RT_01切換成功
2020-12-02 16:34:36
#================================================================================#
GROUP OGUID MON_CONFIRM MODE MPP_FLAG
GRP1 453331 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.11 5536 2020-12-02 16:34:35 GLOBAL VALID OPEN GRP1_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 GRP1_RT_01 OPEN PRIMARY 0 0 REALTIME VALID 3946 41299 3946 41299 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.12 5537 2020-12-02 16:34:38 GLOBAL VALID OPEN GRP1_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
5237 OK GRP1_RT_02 OPEN STANDBY 0 0 REALTIME INVALID 3945 39941 3945 39941 NONE
DATABASE(GRP1_RT_02) APPLY INFO FROM (GRP1_RT_01):
DSC_SEQNO[0], (ASEQ, SSEQ, KSEQ)[3945, 3945, 3945], (ALSN, SLSN, KLSN)[39941, 39941, 39941], N_TSK[0], TSK_MEM_USE[0]
#================================================================================#
[monitor] 2020-12-02 16:34:39: 守護行程(GRP1_RT_01)狀態切換 [OPEN-->RECOVERY]
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 16:34:38 RECOVERY OK GRP1_RT_01 OPEN PRIMARY VALID 4 41299 41299
[monitor] 2020-12-02 16:34:42: 守護行程(GRP1_RT_01)狀態切換 [RECOVERY-->OPEN]
WTIME WSTATUS INST_OK INAME ISTATUS IMODE RSTAT N_OPEN FLSN CLSN
2020-12-02 16:34:41 OPEN OK GRP1_RT_01 OPEN PRIMARY VALID 4 41299 41299
show
2020-12-02 16:35:17
#================================================================================#
GROUP OGUID MON_CONFIRM MODE MPP_FLAG
GRP1 453331 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.11 5536 2020-12-02 16:35:16 GLOBAL VALID OPEN GRP1_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 GRP1_RT_01 OPEN PRIMARY 0 0 REALTIME VALID 3946 41299 3946 41299 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.12 5537 2020-12-02 16:35:18 GLOBAL VALID OPEN GRP1_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
5237 OK GRP1_RT_02 OPEN STANDBY 0 0 REALTIME VALID 3945 41299 3945 41299 NONE
DATABASE(GRP1_RT_02) APPLY INFO FROM (GRP1_RT_01):
DSC_SEQNO[0], (ASEQ, SSEQ, KSEQ)[3946, 3946, 3946], (ALSN, SLSN, KLSN)[41299, 41299, 41299], N_TSK[0], TSK_MEM_USE[0]


總結:
啟動資料守護集群步驟
啟動主庫實體 ==> 啟動主庫的守護行程 ==> 啟動備庫實體 ==> 啟動備庫的守護行程 ==> 啟動確認監視器
關閉資料守護集群步驟
關閉確認監視器 ==> 關閉備庫的守護行程 ==> 關閉主庫的守護行程 ==> 關閉主庫實體服務 ==> 關閉備庫實體服務
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/263014.html
標籤:其他
上一篇:Linux字串截取和處理命令 (cut、printf、awk、sed、sort、wc)筆記
下一篇:Linux下洗掉過期日志檔案
