1個主庫配置多個備庫的問題

dawn009發表於2015-02-02

看到在PUB上有人提問:
==================================
dataguard: 一個primary,配置兩個standby疑問
配置兩個standby的話,引數log_archive_XX,FAL_CLIENT,FAC_SERVER等引數在standby在怎麼設定呢?和配置一個standby一樣嗎?
primary傳送archived log到兩個standby中的任意一個嗎?還是兩個都要傳送,如果只傳送到一個成功後,那另外一個是不是要到第二個standby中去取呢?這樣會緩解primary的壓力。希望大家能給點幫助
=================================
根據做過的專案,嘗試去解答:
一個主庫最多可以配置9個DATAGUARD。配置多個備庫的方式和配置一個備庫差不多是一樣的。
0) 配置TNSNAME,讓主庫可以正確解釋備庫的TNSNAMES;備庫可以解釋主庫的TNSNAMES;
1)在備庫上設定STANDBY LOG 的目錄。
    STANDBY_ARCHIVE_DEST = ’/u01/oracle/oradata/archive’

2) 在主庫上配置LOG_ARCHIVE_DEST_n 引數
LOG_ARCHIVE_DEST_2 = 'SERVICE=payroll2 OPTIONAL REOPEN=180'
 如果有多個備庫,那分別去設定LOG_ARCHIVE_DEST_3, LOG_ARCHIVE_DEST_4。
  注意:LOG_ARCHIVE_DEST_1最好設定為主庫本地的歸檔日誌路徑。
           這裡沒有去解釋DESTINACTION 的依賴關係。也就是每個備庫都有獨立的歸檔日誌,都不依賴其他的備庫。

3) 設定FAL_CLIENT,FAC_SERVER 引數。
   FAL_CLIENT,FAC_SERVER 引數的作用。這是ORACLE 文件上的原話,
You can set initialization parameters so that log apply services automatically identify and resolve archive gaps as they occur on a physical standby database. Define the FAL_CLIENT and FAL_SERVER initialization parameters only for physical standby databases in the initialization parameter file:
    也就是說後臺程式解決日誌的gap問題 。
   在STANTBY上配置,FAL_CLIENT 指向備庫的TNSNAME, FAL_SERVER指向 主庫的TNSNAME。
4) 至於從主庫上傳輸一個還是多個日誌到備庫,那需要看備庫上的方案設定。
    如果備庫共享日誌檔案,那隻要傳輸一個就可以了。
   如果備庫使用獨立的日誌檔案,那就要傳輸多個日誌。
5) 如果要從其他備庫(假設為SERVER-B) 上去取日誌檔案,那需要配置:
    在主庫上,不要配置該備庫(SERVER-A)的LOG_ARCHIVE_DEST。
    在該備庫(SERVER-A)上配置 FAL_SERVER為 SERVER-B的tnsnames。
    在SERVER-B 上,設定 SERVER-A 的tnnames。

 


 

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

相關文章