2017年(38)
分类: Oracle
2017-12-07 13:48:14
1. LGWR
LGWR參數在log buffer寫入redo log file的同時利用LNS進程(LGWR network server)
將redo data傳輸到遠程standby中的standby redo log file,
再在主庫日志切換時同時standby redo log file歸檔至archived redo log file
再產生數據至standby database。
如果使用在開啟standby時指定read time apply將繞過Archived log直接在standby database產生數據
此時可分為同步或異步傳輸.
1.同步LGWR SYNC(LGWR下次執行時需要等待上次的LNS傳輸完畢)
1. 在primary 数据库,LGWR 提交redo 数据到LNSn(LGWR Network Server process)进程(n>0),LNSn 启动网络传输。
2. standby 数据库的RFS(Remote File Server)将接收到的redo 数据写入standby redolog。特别注意, 在此期间, primary 数据库的事务会一直保持, 直到所有所有含LGWR SYNC 属性的LOG_ARCHIVE_DEST_n 指定路径均已完成接收。
一旦primary 数据库执行日志切换,就会级联触发standby 的ARCn 将standby redo 写入归档,然后通过redo 应用(MRP 进程)或sql 应用(LSP 进程)读取归档文件将数据应用至standby 数据库。(如果启用了实时应用的话,MRP/LSP 会直接读取standby redolog 并应用到standby 数据库,无须再等待归档)。
2.異步LGWR ASYNC(LGWR不用等待異步I/O的完成就可以執行下次操作)
圖中archived redo log file為standby archivelog。通過LGWR方式傳輸的在standby上可以不設置log_archive_dest_1(不歸檔),但standby_archive_dest
參數必須有,不設置的話會默認。
失敗時:在重新正常工作時主庫的ARC進程會直接把丟失的歸檔傳至standby的standby archivelog再在備庫上生成新的數據
大致步骤与同步传输相同,差别只在LNSn 进程这里,LGWR 写数据到online redolog,LNSn 进程访问online redolog 并传输数据到远程standby 的RFS 而不再与本地LGWR 之间有联系。standby 数据库方面的处理逻辑仍然不变。
3.LGWR AYSNC=20480 用來接收LGWR將要發送到standby的redo date的緩存區的塊數,每個塊為512byte,可以通過下面視圖查詢,看到沒有設置,默認為: 61440
select * from v$archive_dest;-- ASYNC_BLOCKS
1. AFFIRM屬性
確保備用數據庫所在主機所有磁盤I/O都是同步執行的
2. NET_TIMEOUT
在設置LGWR屬性時通過LNS進程傳輸redo data時如果主庫和standby之間的網絡斷開,在確定連接不存在之前依然會進行重試正常的TCP連接,此過程會消耗兩小時,當設置了NET_TIMEOUT參數可以設置放棄連接時間
3. REOPEN
如果歸檔文件接收到錯誤信息,該log_archive_dest_n將被關閉,過在reopen時間之后目標文件將再次啟動
4. MAX_FAILURE
定義由于故障而被關閉的目標文件的重啟次數
5. VALID_FOR
第一個參數傳輸的文件類型:
ONLINE_LOGFILES
STANDBY_LOGFILES
ALL_LOGFILES
第二個參數傳輸的數據庫的權限
PRIMARY_ROLE
STANDBY_ROLE
ALL_ROLE
如:在主庫設置VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
則:對主庫的話可以傳輸online redo log file
Specifies the policy for reusing online redo log files:
· MANDATORY— Specifies that the transmission of redo data to the destination must succeed before the local online redo log file can be made available for reuse. If neither the MANDATORY nor the OPTIONAL attribute is specified, the default is OPTIONAL
· OPTIONAL—specifies that successful archival to the destination is not required before the online redo log file can be made available for reuse.
Standby_file_management
設為auto,自動處理主庫上物理的變更,如CREATE tablespace