(一)基礎環境
主庫 | 備庫 | |
操作系統 | RedHat6.7 | RedHat6.7 |
服務器名稱 | primarydb1 primarydb2 |
standbydb1 standbydb2 |
IP地址規划 | 192.168.10.31 primarydb1 10.10.10.31 primarydb1-priv |
192.168.10.41 standbydb1 10.10.10.41 standbydb1-priv |
------------------------ | ------------------------------ | --------------------------------------- |
數據庫版本 | 11.2.0.4 | 11.2.0.4 |
db_name | testdb | testdb |
db_unique_name | testdb | testdbdg |
instance_name | testdb1 testdb2 |
testdbdg1 testdbdg2 |
service_name | testdb | testdbdg |
數據庫安裝情況 | 安裝GI+數據庫軟件+創建數據庫 | 安裝GI+數據庫軟件 (不用創建數據庫) |
在配置dataguard之前,主庫已經安裝了GI+數據庫軟件+創建了數據庫,備庫也已經安裝了GI+數據庫軟件,備庫不需要使用dbca建庫。
(二)主庫配置
(2.1)配置歸檔,主庫需要運行在歸檔模式下
--查看是否開啟歸檔 archive log list
如果沒有開啟歸檔,需要開啟,方法如下:
--step1: 設置歸檔日志文件存放地址 alter system set log_archive_dest_1='LOCATION=+ARCH' ; --step2: 關閉數據庫,2個節點都關閉 shutdown immediate --step3: 重啟節點1到mount狀態 startup mount --step4: 開啟歸檔 alter syetem archivelog --step5: 打開數據庫 alter database open --step6: 確認歸檔狀態 archive log list --最好使用alter system switch logfile切換日志,確認日志已經存到歸檔位置 --step7:打開另外一個節點 startup open;
(2.2)主庫啟用強制記錄日志
--開啟數據庫強制記錄日志功能 alter database force logging --查看強制記錄日志功能是否開啟 select force_logging from v$database;
(2.3)主庫網絡配置
(2.3.1)靜態監聽配置
主庫可以使用動態監聽,也可以使用靜態監聽,這里新創建一個監聽LISTENER_ADG,監聽新的端口1522。以下操作使用grid用戶執行
step1:在節點1執行添加監聽命令
srvctl add listener -l LISTENER_ADG -o $ORACLE_HOME -p "TCP:1522"
step2:啟動監聽
srvctl start listener -l LISTENER_ADG
step3:修改監聽配置文件,加入靜態注冊信息,2個節點都需要修改,這里以節點1為例
[grid@primarydb1 ~]$ vim /u01/app/11.2.0/grid/network/admin/listener.ora
LISTENER_ADG=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_ADG)))) # line added by Agent LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_ADG=ON # line added by Agent #添加以下信息 SID_LIST_LISTENER_ADG = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = testdb) (ORACLE_HOME = /u01/app/11.2.0/grid) #填寫的是grid_home (SID_NAME=testdb1) #如果是節點2,需改為SID_NAME=testdb2 ) )
step4:重啟監聽,一個節點執行
srvctl stop listener -l LISTENER_ADG
srvctl start listener -l LISTENER_ADG
(2.3.2)tns配置,主庫2個節點都添加
[oracle@primarydb1 ~]$ cd /u01/app/oracle/product/11.2.0/db_1/network/admin/ [oracle@primarydb1 admin]$ ls samples shrept.lst tnsnames.ora [oracle@primarydb1 admin]$ vim tnsnames.ora
在tnsnames.ora文件中添加如下內容
tnstestdb = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.33)(PORT = 1522)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.34)(PORT = 1522))
(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = testdb) ) ) tnstestdbdg = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.43)(PORT = 1522))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.44)(PORT = 1522)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = testdbdg) ) )
(2.4)主庫參數配置
alter system set db_unique_name = 'testdb' scope=spfile; alter system set log_archive_config='DG_CONFIG=(testdb,testdbdg)'; alter system set log_archive_dest_2='SERVICE=tnstestdbdg LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=testdbdg'; alter system set log_archive_dest_state_1 = "enable"; alter system set log_archive_dest_state_2 = "enable"; alter system set db_file_name_convert='+DATA/testdbdg','+DATA/testdb' scope=spfile; alter system set log_file_name_convert='+DATA/testdbdg','+DATA/testdb' scope=spfile; alter system set standby_file_management=auto; alter system set fal_client='tnstestdb'; alter system set fal_server='tnstestdbdg';
因為有的參數重啟才會生效(scope=spfile),因此改完參數需要重啟
[grid@primarydb1 ~]$ srvctl stop database -d testdb
[grid@primarydb1 ~]$ srvctl start database -d testdb
(2.5)添加standby online redo log
standby redo log的大小與redo log大小相同。組數為比在線日志多一組。
查看在線日志組數信息
SQL> select a."GROUP#",a."THREAD#",a."BYTES",a."MEMBERS" from v$log a, v$logfile b where a."GROUP#" = b."GROUP#" order by group#; GROUP# THREAD# BYTES MEMBERS ---------- ---------- ---------- ---------- 1 1 52428800 1 2 1 52428800 1 3 2 52428800 1 4 2 52428800 1
可以看到,每個線程(可以理解為每個實例)有2組日志文件,每組有1個日志文件。因此我們在創建standby redo log時需要為每個thread創建3組日志文件。
--thread1 alter database add standby logfile thread 1 group 11 ('+DATA') size 50M; alter database add standby logfile thread 1 group 12 ('+DATA') size 50M; alter database add standby logfile thread 1 group 13 ('+DATA') size 50M; --thread2 alter database add standby logfile thread 2 group 14 ('+DATA') size 50M; alter database add standby logfile thread 2 group 15 ('+DATA') size 50M; alter database add standby logfile thread 2 group 16 ('+DATA') size 50M;
(2.6)將主庫的密碼文件拷貝到備庫
拷貝主庫密碼文件到備庫,在節點1執行
[oracle@primarydb1 dbs]$ pwd /u01/app/oracle/product/11.2.0/db_1/dbs # 拷貝密碼文件到備庫節點1 [oracle@primarydb1 dbs]$ scp orapwtestdb1 oracle@192.168.10.41:`pwd` # 拷貝密碼文件到備庫節點2 [oracle@primarydb1 dbs]$ scp orapwtestdb1 oracle@192.168.10.42:`pwd`
(2.7)將主庫的參數文件拷貝到備庫
SQL> create pfile='/home/oracle/pfile_20190818' from spfile; SQL> exit Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, Data Mining and Real Application Testing options [oracle@primarydb1 ~]$ scp pfile_20190818 oracle@192.168.10.41:`pwd` oracle@192.168.10.41's password: pfile_20190818 100% 1859 1.8KB/s 00:00
(三)備庫配置
(3.1)修改密碼文件
linux環境中,密碼文件命名格式為:orapwd{$sid},因此需要修改密碼文件的名字
備庫節點1:
[oracle@standbydb1 dbs]$ pwd /u01/app/oracle/product/11.2.0/db_1/dbs [oracle@standbydb1 dbs]$ mv orapwtestdb1 orapwtestdbdg1
備庫節點2:
[oracle@standbydb2 dbs]$ pwd /u01/app/oracle/product/11.2.0/db_1/dbs [oracle@standbydb2 dbs]$ mv orapwtestdb1 orapwtestdbdg2
(3.2)修改參數文件
最終參數文件如下:
*.audit_file_dest='/u01/app/oracle/admin/testdbdg/adump' *.audit_trail='db' *.cluster_database=true *.compatible='11.2.0.4.0' *.control_files='+DATA/testdb/controlfile/current.266.1016639457' *.db_block_size=8192 *.db_create_file_dest='+DATA' *.db_domain='' *.db_file_name_convert='+DATA/testdb','+DATA/testdbdg' *.db_name='testdb' *.db_unique_name='testdbdg' *.diagnostic_dest='/u01/app/oracle' *.fal_client='tnstestdbdg' *.fal_server='tnstestdb' testdbdg1.instance_number=1 testdbdg2.instance_number=2 *.log_archive_config='DG_CONFIG=(testdb,testdbdg)' *.log_archive_dest_1='LOCATION=+ARCH' *.log_archive_dest_2='SERVICE=tnstestdb LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=testdb' *.log_archive_dest_state_1='enable' *.log_archive_dest_state_2='enable' *.log_file_name_convert='+DATA/testdb','+DATA/testdbdg' *.remote_login_passwordfile='exclusive' *.standby_file_management='AUTO' testdb1.thread=1 testdb2.thread=2 testdb1.undo_tablespace='UNDOTBS2' testdb2.undo_tablespace='UNDOTBS1'
里面涉及到的路徑需要手動創建
su - oracle # 2個節點都要創建 mkdir -p mkidr -p /u01/app/oracle/admin/testdbdg/adump
(3.3)備庫網絡配置
(3.3.1)靜態監聽配置
這里新創建一個監聽LISTENER_ADG,監聽新的端口1522。以下操作使用grid用戶執行
step1:在節點1執行添加監聽命令
srvctl add listener -l LISTENER_ADG -o $ORACLE_HOME -p "TCP:1522"
step2:啟動監聽
srvctl start listener -l LISTENER_ADG
step3:修改監聽配置文件,加入靜態注冊信息,2個節點都需要修改,這里以節點1為例
[grid@standbydb1 ~]$ vim /u01/app/11.2.0/grid/network/admin/listener.ora LISTENER_ADG=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_ADG)))) # line added by Agent LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_ADG=ON # line added by Agent SID_LIST_LISTENER_ADG = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = testdbdg) (ORACLE_HOME = /u01/app/11.2.0/grid) (SID_NAME=testdbdg1) ) )
step4:重啟監聽,一個節點執行
srvctl stop listener -l LISTENER_ADG
srvctl start listener -l LISTENER_ADG
(3.3.2)tns配置,備庫2個節點都添加
[oracle@primarydb1 ~]$ cd /u01/app/oracle/product/11.2.0/db_1/network/admin/ [oracle@primarydb1 admin]$ ls samples shrept.lst tnsnames.ora [oracle@primarydb1 admin]$ vim tnsnames.ora
# 在tnsnames.ora文件中添加如下內容
tnstestdb = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.33)(PORT = 1522)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.34)(PORT = 1522))
(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = testdb) ) ) tnstestdbdg = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.43)(PORT = 1522))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.44)(PORT = 1522)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = testdbdg) ) )
(3.4)啟動備庫到nomount狀態
[oracle@standbydb1 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Mon Aug 19 04:14:04 2019 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> startup nomount pfile='/home/oracle/pfile_20190818'; ORACLE instance started. Total System Global Area 313196544 bytes Fixed Size 2252744 bytes Variable Size 255852600 bytes Database Buffers 50331648 bytes Redo Buffers 4759552 bytes SQL>
注意:再將備庫啟動到nomount狀態后,理論上,可以從主庫通過sqlplus連接到備庫,同樣也可以在備庫通過sqlplus連接到主庫,這里建議測試主庫備庫之間網絡的連通性。在主庫與備庫上執行
tnsping tnstestdb tnsping tnstestdbdg sqlplus sys/Oracle123@tnstestdb sqlplus sys/Oracle123@tnstestdbdg
確保所有命令都能執行成功。
(3.5)將數據庫注冊到集群中,才能夠使用ASM
在節點1的oracle用戶下執行:
[oracle@standbydb1 db_1]$ srvctl add database -d testdbdg -o /u01/app/oracle/product/11.2.0/db_1 [oracle@standbydb1 db_1]$ srvctl add instance -d testdbdg -i testdbdg1 -n standbydb1 [oracle@standbydb1 db_1]$ srvctl add instance -d testdbdg -i testdbdg2 -n standbydb2
(四)主庫備份
rman target / RMAN> run { allocate channel c1 type disk; allocate channel c2 type disk; sql' alter system archive log current'; backup database format '/databaseBackup/full_db_%U'; sql' alter system archive log current'; backup archivelog all format '/databaseBackup/archlog_%U'; backup current controlfile format '/databaseBackup/controlfile_%U'; backup spfile format '/databaseBackup/spfile_%U'; release channel c1; release channel c2; }
將備份傳到備庫服務器:
[oracle@primarydb1 /]$ cd databaseBackup/ [oracle@primarydb1 databaseBackup]$ ls archlog_0au9imjq_1_1 archlog_0cu9imnk_1_1 full_db_06u9imbr_1_1 full_db_08u9imhs_1_1 spfile_0gu9imtt_1_1 archlog_0bu9imju_1_1 controlfile_0du9imrd_1_1 full_db_07u9imbr_1_1 full_db_09u9imhv_1_1 [oracle@primarydb1 databaseBackup]$ scp * oracle@192.168.10.41:/databaseBackup/
(五)備庫還原
(5.1)restore控制文件
[oracle@standbydb1 ~]$ rman target / Recovery Manager: Release 11.2.0.4.0 - Production on Mon Aug 19 06:47:00 2019 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: TESTDB (not mounted) RMAN> restore standby controlfile from '/databaseBackup/controlfile_0du9imrd_1_1'; Starting restore at 19-AUG-19 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=292 instance=testdbdg1 device type=DISK channel ORA_DISK_1: restoring control file channel ORA_DISK_1: restore complete, elapsed time: 00:00:08 output file name=+DATA/testdbdg/controlfile/current.268.1016664445 Finished restore at 19-AUG-19
備注:在恢復控制文件時,遇到錯誤:
解決方法:https://jingyan.baidu.com/album/9faa7231c13269473c28cb33.html?picindex=9
(5.2)修復數據庫
在啟動到mount狀態時報了2個錯誤:
報錯1:初始化參數文件找不到
解決方法:復制pfile到給定位置
[oracle@standbydb1 bin]$ cp /home/oracle/pfile_20190818 /u01/app/oracle/product/11.2.0/db_1/dbs/inittestdbdg1.ora
報錯2:控制文件找不到
解決方法:
1.通過asmcmd找到控制文件的位置;
ASMCMD> pwd +data/testdbdg/CONTROLFILE ASMCMD> ls current.256.1016666437
2.修改初始化參數文件中
[oracle@standbydb1 ~]$ vim /u01/app/oracle/product/11.2.0/db_1/dbs/inittestdbdg1.ora ... *.control_files='+data/testdbdg/CONTROLFILE/current.256.1016666437'
...
重新啟動數據庫到mount狀態
[oracle@standbydb1 dbs]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Mon Aug 19 07:08:15 2019 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> startup mount; ORACLE instance started. Total System Global Area 313196544 bytes Fixed Size 2252744 bytes Variable Size 255852600 bytes Database Buffers 50331648 bytes Redo Buffers 4759552 bytes Database mounted.
開始修復數據庫
RMAN> restore database; Starting restore at 19-AUG-19 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=14 instance=testdbdg1 device type=DISK channel ORA_DISK_1: starting datafile backup set restore channel ORA_DISK_1: specifying datafile(s) to restore from backup set channel ORA_DISK_1: restoring datafile 00001 to +DATA/testdbdg/datafile/system.268.1016639305 channel ORA_DISK_1: restoring datafile 00004 to +DATA/testdbdg/datafile/users.267.1016639305 channel ORA_DISK_1: reading from backup piece /databaseBackup/full_db_06u9imbr_1_1 channel ORA_DISK_1: piece handle=/databaseBackup/full_db_06u9imbr_1_1 tag=TAG20190819T035434 channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:08:19 channel ORA_DISK_1: starting datafile backup set restore channel ORA_DISK_1: specifying datafile(s) to restore from backup set channel ORA_DISK_1: restoring datafile 00002 to +DATA/testdbdg/datafile/sysaux.260.1016639305 channel ORA_DISK_1: restoring datafile 00003 to +DATA/testdbdg/datafile/undotbs1.263.1016639305 channel ORA_DISK_1: restoring datafile 00005 to +DATA/testdbdg/datafile/undotbs2.264.1016639859 channel ORA_DISK_1: reading from backup piece /databaseBackup/full_db_07u9imbr_1_1 channel ORA_DISK_1: piece handle=/databaseBackup/full_db_07u9imbr_1_1 tag=TAG20190819T035434 channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:00:56 Finished restore at 19-AUG-19
(六)打開備庫
打開備庫
SQL> alter database open ;
Database altered.
查看數據庫狀態:
SQL> select name,db_unique_name,open_mode from v$database; NAME DB_UNIQUE_NAME OPEN_MODE --------- ------------------------------ -------------------- TESTDB testdbdg READ ONLY
開始數據庫實時日志應用,在開啟之前,需要確認standby redo logfile是否已經創建,這里已經從主庫恢復過來,故不需要創建
SQL> alter database recover managed standby database using current logfile disconnect; Database altered.
在執行該語句后,數據庫會自動去同步主庫新生成的日志,可以打開主庫與備庫的告警日志,查看數據庫同步狀態。
(七)啟動另外一個節點
(7.1)首先使用pfile生成spfile
SQL> create spfile='+DATA/testdbdg/spfiletestdbdg.ora' from pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/inittestdbdg1.ora'; File created.
關閉節點1,修改pfile參數:
SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. #節點1 [oracle@standbydb1 ~]$ cd /u01/app/oracle/product/11.2.0/db_1/dbs/ [oracle@standbydb1 dbs]$ vim inittestdbdg1.ora # 僅保留一行參數,指向spfile spfile='+DATA/testdbdg/spfiletestdbdg.ora' #節點2 [oracle@standbydb1 ~]$ cd /u01/app/oracle/product/11.2.0/db_1/dbs/ [oracle@standbydb1 dbs]$ vim inittestdbdg2.ora # 僅保留一行參數,指向spfile spfile='+DATA/testdbdg/spfiletestdbdg.ora'
(7.2)啟動節點
首先查看數據庫狀態:
[grid@standbydb1 ~]$ crsctl status res -t -------------------------------------------------------------------------------- ... ora.testdbdg.db 1 OFFLINE OFFLINE Instance Shutdown 2 OFFLINE OFFLINE ...
打開節點1:
[oracle@standbydb1 dbs]$ sqlplus / as sysdba SQL> startup --開啟實時日志應用 SQL> alter database recover managed standby database using current logfile disconnect;
打開節點2:
[oracle@standbydb2 dbs]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Thu Aug 22 06:07:55 2019 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORACLE instance started. Total System Global Area 313196544 bytes Fixed Size 2252744 bytes Variable Size 255852600 bytes Database Buffers 50331648 bytes Redo Buffers 4759552 bytes Database mounted. Database opened.
再次確認數據庫的狀態,已經正常啟動:
[grid@standbydb1 ~]$ crsctl status res -t -------------------------------------------------------------------------------- ... ora.testdbdg.db 1 ONLINE ONLINE standbydb1 Open,Readonly 2 ONLINE ONLINE standbydb2 Open,Readonly ...
查看備庫的數據庫狀態:
主庫:
SQL> select name,db_unique_name,open_mode,database_role from v$database; NAME DB_UNIQUE_NAME OPEN_MODE DATABASE_ROLE --------- ------------------------------ -------------------- ---------------- TESTDB testdb READ WRITE PRIMARY
備庫:
SQL> select name,db_unique_name,open_mode,database_role from v$database; NAME DB_UNIQUE_NAME OPEN_MODE DATABASE_ROLE --------- ------------------------------ -------------------- ---------------- TESTDB testdbdg READ ONLY WITH APPLY PHYSICAL STANDBY
(八)測試數據同步情況
(1)主庫創建表,插入數據:
SQL> create table test02 (id number , name varchar(20)); Table created. SQL> insert into test02 values(1,'lijiaman'); 1 row created. SQL> commit; Commit complete.
SQL> select * from test02;
ID NAME
---------- --------------------
1 lijiaman
備庫查看:
SQL> select * from test02; ID NAME ---------- -------------------- 1 lijiaman
數據已同步。
(2)主庫刪除表,表進入了回收站,11gR2的dataguard不需要關閉回收站。
SQL> drop table test02; Table dropped. SQL> select * from tab; TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- BIN$kKkJUDt4hvrgUyAKqMC61w==$0 TABLE
發現備庫表也進入了回收站
SQL> select * from tab; TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- BIN$kKkJUDt4hvrgUyAKqMC61w==$0 TABLE
同樣,主庫執行閃回刪除,將sales表從回收站恢復回來,備庫也會執行相同的操作。
主庫執行閃回刪除恢復已經刪除的test02表
SQL> flashback table test02 to before drop; Flashback complete. SQL> select * from tab; TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- TEST02 TABLE
備庫也會自動恢復已經刪除的test02表
SQL> select * from tab; TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- TEST02 TABLE
數據同步測試無異常。
(九)存在的問題
存在的問題1:備庫使用scan-ip無法連接:
配置信息:ip192.168.10.40 port:1521 service:testdbdg
需要設置初始化參數:remote_listener
SQL> alter system set remote_listener='standbydb-scan:1521'
【完】