2017年(38)
分类: Oracle
2017-12-07 13:48:14
保護模式
Maximum protection mode
因某些故障在事務提交前,如主庫online redo log不能傳輸到至少一組備庫的standby redo log file中,主庫將自動關閉。
必須用LGWR SYNC AFFIRM
Maximum availability mode
Like maximum protection mode, a transaction will not commit until the redo needed to recover that transaction is written to the local online redo log and to at least one remote standby redo log. Unlike maximum protection mode, the primary database does not shut down if a fault prevents it from writing its redo stream to a remote standby redo log.
必須用LGWR SYNC AFFIRM
Maximum performance mode
默認的保護模式
可使用ARCH或LGWR ASYNC屬性對備庫歸檔,備庫可以沒standby redo log file
Maximum Protection |
Maximum Availability |
Maximum Performance | |
Redo archival process |
LGWR |
LGWR |
LGWR or ARCH |
Network transmission mode |
SYNC |
SYNC |
SYNC or ASYNC when using LGWR process. SYNC if using ARCH process |
Disk write option |
AFFIRM |
AFFIRM |
AFFIRM or NOAFFIRM |
Standby redo log required? |
Yes |
Yes |
No, but it is recommended |
日志傳輸服務
DG的核心時日志服務
通過log_archive_dest_n定義如何傳輸重做日志以及將它們傳輸到什么地方。
借助屬性location,service確定重做日志是在本地還是傳輸到遠程主機
log_archive_dest_2='service=nbdg OPTIONAL LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=nbdg'
1. ARC(默認)
如ARC或LGWR屬性沒指定,或者指定了ARC,就為ARC模式
默認:日志切換時ARC進程先把聯機重做日志(redo logfile)歸檔到本地之后
log_archive_dest_1='LOCATION=/backup/archive'
再產生另一個ARC進程把本地歸檔的數據傳輸到遠程standby.
遠程傳輸如果通過慢速網絡也不會影響到本地數據庫的可用性
如:log_archive_local_first=false
在日志切換時,ARC進程將建立一個需要服務的歸檔目標文件列表,當列表創建后,
ARC進程將從將被歸檔的聯機日志中讀取1M的數據塊,并將1M的數據塊傳輸到列表中的第一個目標中,寫完這個后,同樣的1M數據塊被寫入第二個目標文件,直到寫完所有的聯機日志,如果主備庫之間時快速網絡的話,這時最佳方法