ORACLE Tips: 使用 RMAN 在沒有 catalog 資料庫時的備份與還原方式 By Tommy Wu ORACLE 的 RMAN (Recovery Manager) 是一個不錯的備份與還原工具. 使用 RMAN 來備 份資料庫時, 比以前使用的方式要快多了, 而且空間也節省了不少. 不過, 通常 ORACLE 在使用 RMAN 的時候, 都建議使用另一個 catalog 資料庫來存放備 份的相關訊息. 對於這一點, 我一直無法認同.... 用另一個資料庫來存備份資訊, 那麼 ... 那一個 catalog 資料庫要怎麼備份呢? 因為在真的做資料回復的時候, 所能用的東 西是越簡單越好, 如果還要依賴另一個資料庫, 那萬一那個資料庫也出事了, 要如何回 復呢? 所以, 我習慣使用 RMAN 在沒有 catalog 資料庫的情形下做備份與還原的動作. 這樣的 話, 我只要確定備份下來的檔案正常無誤, 就一定可以還原. 當不使用 catalog 資料庫時, 這些備份的資料也要有地方可以存放, 此時, 存放的位置 就是 ORACLE 本身的 control 檔案. 使用這個方式備份時, 你的 controlfile 會因為 存放這些資料而變的比較大 (可能會上數百 MB), 而且你要在你的參數檔案中指定這些 資料的保存日數, 如: CONTROL_FILE_RECORD_KEEP_TIME = 14 上面的參數會存放 14 天的資料. 你可以依據你的需求而決定這個數字. == 備份 == 在備份的時候, 由於備份的資訊是存放在 controlfile 中, 所以我們必須在備份資料庫 之後, 另外將 controlfile 備份出來, 如: rman target / nocatalog <