RMAN除了單純的備份恢復功能已經被賦予了越來越多的責任比如創建Standby數據庫比如跨平台傳輸表空間中的表空間轉換Oracleg的RMAN倒是沒有太多飛躍性的更新
自定義archivelog刪除策略
我們知道在g之前只有backupset的刪除策略可以定義比如保留多長時間的備份或者保留多少份有效備份而刪除歸檔日志只有在delete命令中定義刪除全部備份完畢的或者刪除從哪一個時間點到哪一個時間點的而在g中我們已經可以通過configure命令來定義歸檔日志的刪除策略的比如增加了下面的語法只有在磁帶上備份了次的歸檔日志才會被delete命令刪除
CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP TIMES TO DEVICE TYPE sbt
當然僅僅是增加語法那就只能稱為比較無聊的新功能了除了configure語法之外現在在g中通過APPLIED ON STANDBY關鍵字可以定義只有對於所有的standby站點都已經applied的歸檔日志才會被刪除或者定義所有被成功傳送到standby站點的歸檔日志就可以被刪除而以前這些都需要DBA自己撰寫腳本從數據字典中查詢到相關信息然後再通過腳本刪除
直接通過網絡復制數據庫
在g之前如果要使用duplicate命令來復制一份數據庫那麼則需要源數據庫需要在目標機器上的一份有效備份需要目標數據庫在g中這一切被大大簡化通過FROM ACTIVE DATABASE關鍵字我們只需要有一個源數據庫就可以簡單地通過網絡在另外一台機器上復制一個相同的數據庫了Oracle會通過一系列 Memory Script在內存中recover並且open目標數據庫
另外在g之前duplicate數據庫是不會自動復制spfile的而現在我們通過下面的語句就可以讓Oracle在復制過程中自動生成一份spfile並且其中的初始化參數允許額外定義
DUPLICATE TARGET DATABASE
TO aux_db
FROM ACTIVE DATABASE
SPFILE PARAMETER_VALUE_CONVERT /u /u
SET SGA_MAX_SIZE = M
SET SGA_TARGET = M
SET LOG_FILE_NAME_CONVERT = /u/u
DB_FILE_NAME_CONVERT /u/u;
在g中使用duplicate復制一個數據庫的准備步驟只需要目標數據庫(AUXILIARY實例)
a 通過一個最簡單的pfile把實例啟動到nomount狀態這個pfile中只需要包含DB_NAME和REMOTE_LOGIN_PASSWORFILE參數即可
b password文件必須事先建好而且SYS密碼需要跟source數據庫中相同這個通過orapwd可以輕松完成
c 目錄結構需要事先創建好並且具有正確的權限
並行備份大文件
現在Oracle數據庫中單個數據文件可以最大到T而在以前的版本中RMAN的最小備份單位就是datafile那麼對於以後可能出現的這種超大數據文件RMAN備份就幾乎無法操作了在g中通過backup命令中的SECTION SIZE關鍵字我們可以對數據文件指定section了每個section都作為一個獨立單位來處理每個數據文件可以最多指定個 section
Section的好處在於一可以並行備份多個section提高備份速度二可以分多個時間分別備份一個大文件的多個section時間上化整為零更具有操作性
RMAN Catalog管理性增強
IMPORT CATALOG命令允許我們將一個catalog庫中的信息轉儲到另外一個catalog庫這在以前完全需要手工操作
推出Virtual Recovery Catalogs概念這是VPD的實例應用對於一個集中管理的catalog設置多個用戶的虛擬catalog每個用戶只能管理自己的數據安全性的進一步提高
From:http://tw.wingwit.com/Article/program/Oracle/201311/17666.html