Oracle 11g Dataguard 物理備庫配置系列文檔sql
Oracle 11g Dataguard 物理備庫配置(一)之duplicate建立
Oracle 11g Dataguard 物理備庫配置(二)之Active Dataguard測試
Oracle 11g Dataguard 物理備庫配置(三)之Dataguard broker配置
Oracle 11g Dataguard 物理備庫配置(四)之broker snapshot standby測試數據庫
Oracle 11g Dataguard 物理備庫配置(五)之broker switchover測試oracle
Oracle 11g Dataguard 物理備庫配置(六)之broker fastfailover測試app
Oracle 11g Dataguard 配置學習小結ide
http://koumm.blog.51cto.com/703525/1280139學習
Oracle 11g Dataguard Snapshot Standby數據庫功能,可將備庫置於打開讀寫狀態,進行模擬生產環境主庫中測試。當備庫Snapshot standby任務完成後,能夠切換回物理備庫角色。在Snapshot Standby數據庫狀態下,備庫是能夠接受主庫傳過來的日誌,可是不可以將變化應用在備庫中。測試
本文采用Oracle 11g Dataguard broker snapshot standby配置spa
1. 採用dg broker配置snapshot standby配置日誌
1) 查看配置信息orm
$ dgmgrl sys/oracle
DGMGRL for Linux: Version 11.2.0.3.0 - 64bit Production
Copyright (c) 2000, 2009, Oracle. All rights reserved.
歡迎使用 DGMGRL, 要獲取有關信息請鍵入 "help"。
已鏈接。
DGMGRL> show configuration;
配置 - dgorcldb
保護模式: MaxPerformance
數據庫:
orcl - 主數據庫
slave - 物理備用數據庫
快速啓動故障轉移: DISABLED
配置狀態:
SUCCESS
2. 轉換備庫爲鏡像庫(snapshot standby)
DGMGRL> convert database slave to snapshot standby;
正在將數據庫 "slave" 轉換爲快照備用數據庫, 請稍候...
數據庫 "slave" 已成功轉換
DGMGRL>
DGMGRL> show configuration
配置 - dgorcldb
保護模式: MaxPerformance
數據庫:
orcl - 主數據庫
slave - 快照備用數據庫
快速啓動故障轉移: DISABLED
配置狀態:
SUCCESS
DGMGRL>
3. 測試鏡像庫
1) 備庫上操做
[oracle@slave ~]$ sqlplus /nolog
SQL*Plus: Release 11.2.0.3.0 Production on 星期六 8月 17 21:35:29 2013
Copyright (c) 1982, 2011, Oracle. All rights reserved.
SQL> conn / as sysdba;
已鏈接。
SQL> select open_mode,database_role,db_unique_name from v$database;
OPEN_MODE DATABASE_ROLE DB_UNIQUE_NAME
-------------------- ---------------- ------------------------------
READ WRITE SNAPSHOT STANDBY slave
#這次鏡像庫已是打開狀態,數據庫角色也是SNAPSHOT STANDBY 。
SQL> conn abc/abc
已鏈接。
SQL> select * from abc;
ID NAME
---------- ----------
0 aaa
1 bbb
SQL> insert into abc values ( 11 , 'fffff' );
已建立 1 行。
SQL> commit;
提交完成。
SQL> select * from abc;
ID NAME
---------- ----------
11 fffff
0 aaa
1 bbb
SQL>
2) 主庫上查看
SQL> select open_mode,database_role,db_unique_name from v$database;
OPEN_MODE DATABASE_ROLE DB_UNIQUE_NAME
-------------------- ---------------- ------------------------------
READ WRITE PRIMARY orcl
在主庫上插入記錄,並切換日誌。
SQL> conn abc/abc
SQL> select * from abc;
ID NAME
---------- ----------
0 aaa
1 bbb
SQL> insert into abc values ( 2 , 'ccc' );
已建立 1 行。
SQL> commit;
提交完成。
SQL> select * from abc;
ID NAME
---------- ----------
2 ccc
0 aaa
1 bbb
SQL>
SQL> conn / as sysdba;
SQL> alter system switch logfile;
SQL> archive log list;
數據庫日誌模式 存檔模式
自動存檔 啓用
存檔終點 /u01/archivelog/
最先的聯機日誌序列 16
下一個存檔日誌序列 18
當前日誌序列 18
主庫上新增一條記錄並切換日誌,說明17號日誌是剛纔規檔的日誌。
查看主庫規檔日誌:
[root@master archivelog]# ll
-rw-r----- 1 oracle oinstall 22374912 08-16 22:51 arch_823637109_1_10.arc
-rw-r----- 1 oracle oinstall 2048 08-16 22:51 arch_823637109_1_11.arc
-rw-r----- 1 oracle oinstall 3137536 08-17 19:05 arch_823637109_1_12.arc
-rw-r----- 1 oracle oinstall 1536 08-17 19:05 arch_823637109_1_13.arc
-rw-r----- 1 oracle oinstall 23025664 08-17 20:03 arch_823637109_1_14.arc
-rw-r----- 1 oracle oinstall 686080 08-17 20:05 arch_823637109_1_15.arc
-rw-r----- 1 oracle oinstall 36077568 08-17 21:30 arch_823637109_1_16.arc
-rw-r----- 1 oracle oinstall 941056 08-17 21:49 arch_823637109_1_17.arc
-rw-r----- 1 oracle oinstall 23513088 08-16 21:06 arch_823637109_1_5.arc
-rw-r----- 1 oracle oinstall 52736 08-16 21:06 arch_823637109_1_6.arc
-rw-r----- 1 oracle oinstall 5014528 08-16 21:36 arch_823637109_1_7.arc
-rw-r----- 1 oracle oinstall 247808 08-16 21:40 arch_823637109_1_8.arc
-rw-r----- 1 oracle oinstall 48640 08-16 21:41 arch_823637109_1_9.arc
查看備庫規檔日誌:
[root@slave archivelog]# ll
-rw-r----- 1 oracle oinstall 22374912 08-16 22:51 arch_823637109_1_10.arc
-rw-r----- 1 oracle oinstall 2048 08-16 22:51 arch_823637109_1_11.arc
-rw-r----- 1 oracle oinstall 3137536 08-17 19:05 arch_823637109_1_12.arc
-rw-r----- 1 oracle oinstall 1536 08-17 19:05 arch_823637109_1_13.arc
-rw-r----- 1 oracle oinstall 23025664 08-17 20:03 arch_823637109_1_14.arc
-rw-r----- 1 oracle oinstall 686080 08-17 20:06 arch_823637109_1_15.arc
-rw-r----- 1 oracle oinstall 36077568 08-17 21:31 arch_823637109_1_16.arc
-rw-r----- 1 oracle oinstall 941056 08-17 21:49 arch_823637109_1_17.arc
-rw-r----- 1 oracle oinstall 5014528 08-16 21:40 arch_823637109_1_7.arc
-rw-r----- 1 oracle oinstall 247808 08-16 21:40 arch_823637109_1_8.arc
-rw-r----- 1 oracle oinstall 48640 08-16 21:41 arch_823637109_1_9.arc
-rw-r----- 1 oracle oinstall 2048 08-17 21:30 arch_823728603_1_1.arc
發現17號日誌經傳到備庫上,只是沒有應用。
查看備庫日誌應用狀況,16,17號日誌都沒有應用。
SQL> select sequence#,first_time,next_time,applied from v$archived_log order by sequence#;
SEQUENCE# FIRST_TIME NEXT_TIME APPLIED
---------- -------------- -------------- ---------
1 17-8月 -13 17-8月 -13 NO
7 16-8月 -13 16-8月 -13 YES
8 16-8月 -13 16-8月 -13 YES
9 16-8月 -13 16-8月 -13 YES
10 16-8月 -13 16-8月 -13 YES
11 16-8月 -13 16-8月 -13 YES
12 16-8月 -13 17-8月 -13 YES
13 17-8月 -13 17-8月 -13 YES
14 17-8月 -13 17-8月 -13 YES
15 17-8月 -13 17-8月 -13 YES
16 17-8月 -13 17-8月 -13 NO
17 17-8月 -13 17-8月 -13 NO
已選擇12行。
4. 鏡像庫(snapshot standby)轉換備庫
snaphost standyb是經過閃回功能實現,可是Oracle 11g dataguard snapshot standby配置與主備庫是否啓用閃回沒有任何關係。
鏡像庫切換回備庫的過程是經過閃回到原還點,並應用主庫生成日誌,實現主備一致。
1)切換回物理備庫
DGMGRL> show configuration
配置 - dgorcldb
保護模式: MaxPerformance
數據庫:
orcl - 主數據庫
slave - 快照備用數據庫
快速啓動故障轉移: DISABLED
配置狀態:
SUCCESS
DGMGRL>
DGMGRL> convert database slave to physical standby;
正在將數據庫 "slave" 轉換爲物理備用數據庫, 請稍候...
操做要求關閉實例 "slave" (在數據庫 "slave" 上)
正在關閉實例 "slave"...
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
操做要求啓動實例 "slave" (在數據庫 "slave" 上)
正在啓動實例 "slave"...
ORACLE 例程已經啓動。
數據庫裝載完畢。
正在繼續轉換數據庫 "slave" ...
操做要求關閉實例 "slave" (在數據庫 "slave" 上)
正在關閉實例 "slave"...
ORA-01109: 數據庫未打開
已經卸載數據庫。
ORACLE 例程已經關閉。
操做要求啓動實例 "slave" (在數據庫 "slave" 上)
正在啓動實例 "slave"...
ORACLE 例程已經啓動。
數據庫裝載完畢。
數據庫 "slave" 已成功轉換
DGMGRL>
2) 轉換成功,查看結果,切換成功
DGMGRL> show configuration
配置 - dgorcldb
保護模式: MaxPerformance
數據庫:
orcl - 主數據庫
slave - 物理備用數據庫
快速啓動故障轉移: DISABLED
配置狀態:
SUCCESS
DGMGRL>
3)查看備庫角色與記錄
SQL> select open_mode,database_role,db_unique_name from v$database;
OPEN_MODE DATABASE_ROLE DB_UNIQUE_NAME
-------------------- ---------------- ------------------------------
MOUNTED PHYSICAL STANDBY slave
#打開Active dataguard特性查看驗證,日誌記錄應用。
SQL> alter database open;
數據庫已更改。
SQL> conn abc/abc
已鏈接。
SQL> select * from abc;
ID NAME
---------- ----------
2 ccc
0 aaa
1 bbb
SQL>
已經還原到與主庫記錄一致狀態。