Snapshot Standby
INTRODUCTION
Snapshot standby database是ORACLE 11g的新特性。允許Physical standby短時間的使用read write模式。
Snapshot standby是由Physical standby 全新轉換而來,可以獨立於primary 處理事務,同時能夠不斷地從primary接受redo data,歸檔redo data以備後用維護保護。
Snapshot Standby Database的特性:
(1) Snapshot standby接收並歸檔redo data,但不應用redo data。
(2) Snapshot standby轉換回physical standby後,開始應用之前接收並歸檔的redo data.
(3) 主庫傳輸過來的redo data一直被歸檔存放起來。
(4) 轉換回physical standby後,所有的本地更新操作將會被丟棄。
(5) 如果primary移動到新的DB分支(如flashback database,open resetlogs),snapshot standby database會從新的DB分支繼續接受redo data.
(6) Snapshot standby不能作為switchover或者failover的目標庫。Snapshot standby必須轉換回Physical standby才能執行角色轉換。
(7) DG配置中的一個Standby發生switchover或者failover角色轉換為primary後,Snapshot standby可以接受角色轉換後的新的primary database 的redo data.
(8) Snapshot standby不能為最大保護模式的DG配置中唯一的standby.
註意:一旦snapshot standby被激活的時間超出了primary 的最大負載時間,再次的本地更新操作將會產生額外的異常。
轉換物理備庫為快照備庫
1.打開physical standby閃回區
SQL> alter system set db_recovery_file_dest_size=1G;
SQL> alter system set db_recovery_file_dest=‘/oradata/snapshot‘;
2.停止活動狀態的日誌應用
SQL> recover managed standby database cancel;
3.啟動數據庫到mount節點
SQL> shutdown immediate;
SQL> startup mount;
4.裝換physical standby為snapshot standby
SQL> alter database convert to snapshot standby;
5.打開數據庫
如果在轉換的工程中,物理備庫被dismount,則重啟物理備庫。
SQL> alter database open;
SQL> select open_mode,database_role from v$database;
OPEN_MODE DATABASE_ROLE
-------------------- ----------------
READ WRITE SNAPSHOT STANDBY
轉換快照備庫為物理備庫
1.打開數據庫至mount狀態
SQL> shutdown immediate
SQL> startup mount;
2.轉換snapshot standby為physical standby
SQL> alter database convert to physical standby;
3.restart數據庫,開啟日誌應用
SQL> shutdown immediate
SQL> startup mount;
SQL> alter database open read only;
SQL> select open_mode,database_role from v$database;
OPEN_MODE DATABASE_ROLE
-------------------- ----------------
READ ONLY PHYSICAL STANDBY
4.開啟日誌應用
SQL> recover managed standby database using current logfile disconnect;
Snapshot Standby