ZT:oracle10g Data Guard新特性:物理備庫也可以read/write

lfree發表於2007-08-08

http://ningoo.itpub.net/post/2149/233041

從Oracle10g開始,physical standby也可以臨時的置於read/write狀態,以便用於開發,測試以及做報表等,然後再透過flashback到先前的時間點,繼續應用主庫的歸檔。

下面透過一個實驗演示整個過程:

1.設定閃回恢復區
SQL> alter system set db_recovery_file_dest_size=2G;

系統已更改。

SQL> alter system set db_recovery_file_dest='e:/oracle/back';

系統已更改。

2.取消備庫的自動恢復狀態
SQL> alter database recover managed standby database cancel;

資料庫已更改。

3.建立一個還原點
SQL> create restore point restore_point_test guarantee flashback database;

還原點已建立。

4.在主庫歸檔當前日誌,確保前一步建立還原點的scn的歸檔日誌已經傳到備庫
SQL> alter system archive log current;

系統已更改。

5.將主庫到備庫的歸檔目的地的狀態設定為defer
SQL> alter system set log_archive_dest_state_2=defer;

系統已更改。

6.啟用備庫到read/write狀態
SQL> alter database activate standby database;

資料庫已更改。

SQL> alter database open;

資料庫已更改。

7.此時可以在備庫執行需要的讀寫操作
SQL> create table t1 as select * from all_objects where rownum<101;

表已建立。

SQL> drop table t1;

表已刪除。

8.將資料庫flashback回原來儲存的還原點
SQL> startup mount force;
ORACLE 例程已經啟動。

Total System Global Area 142606336 bytes
Fixed Size 1247732 bytes
Variable Size 83887628 bytes
Database Buffers 50331648 bytes
Redo Buffers 7139328 bytes
資料庫裝載完畢。

SQL> flashback database to restore point restore_point_test;

閃回完成。

9.轉換成備庫
SQL> alter database convert to physical standby;

資料庫已更改。

10.將備庫至於自動恢復狀態
SQL> startup mount force;
ORACLE 例程已經啟動。

Total System Global Area 142606336 bytes
Fixed Size 1247732 bytes
Variable Size 83887628 bytes
Database Buffers 50331648 bytes
Redo Buffers 7139328 bytes
資料庫裝載完畢。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-83074/,如需轉載,請註明出處,否則將追究法律責任。

相關文章