1. 程式人生 > >Oracle 11g Data Guard暫停物理備庫的日誌傳輸(log_archive_dest_state_n的defer引數)

Oracle 11g Data Guard暫停物理備庫的日誌傳輸(log_archive_dest_state_n的defer引數)

本文轉載自   http://blog.itpub.net/26506993/viewspace-1850590/

在實際生產系統中,通常有這樣的場景,例如在系統維護日,對主庫進行大量的業務更新,會有大量的DML操作;
為了避免主庫中的業務更新對備庫造成影響,可以暫停主庫對備庫的日誌傳輸,這樣的話,如果主庫的更新出現問題,備庫還保留一份完整的資料映象,可以執行 failover(失敗切換)。

1、在主庫上面檢視備份的歸檔路徑

SQL> show parameter log_archive_dest_2


NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_2     string SERVICE=flame ASYNC VALID_FOR=
(ONLINE_LOGFILES,PRIMARY_ROLE)
 DB_UNIQUE_NAME=flame

SQL> show parameter log_archive_dest_state_2


NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_2     string ENABLE

2、通過設定 defer 引數來暫停主庫對備庫的日誌傳輸

SQL> alter system set log_archive_dest_state_2 = 'defer';


System altered.

執行歸檔日誌切換

SQL> alter system switch logfile;


System altered.

3、恢復主庫到備份的日誌傳輸,暫停日誌傳輸後的歸檔日誌會全部傳輸到備庫,不會導致備庫的歸檔日誌 gap

SQL> alter system set log_archive_dest_state_2 = 'enable';
System altered.