備份的定義。
備份的根本目的是恢複。需要時,能恢複出來的,就叫備份。比如,archive log file便是對online redo log file的備份。
備份的有效性。
eygle在其blog上說:"系統總是要崩潰的,沒有有效備份只是等哪一天死!唯一會使DBA在夢中驚醒的就是沒有有效備份"。當我們以resetlogs開啟資料庫時,建議馬上做一次全庫備份,其目的就是為了確保archive log file的序號的連續,之前的備份依然有效。
備份的類型。
物理備份:備份檔案
邏輯備份:備份資料
備份的狀態。
一致的。
不一致的。
1)資料檔案的檔案頭和控制檔案擁有相同的SCN,就為一致性備份。如:shutdown immediate就是在做一致性備份。
2)建立不一致性的備份除了備份資料庫啟動時必須的資料檔案和控制檔案外,還需要備份歸檔記錄檔。所以,只有歸檔模式下建立的不一致備份才能被視為有效備份。
恢複的定義。
資料庫置為一致性狀態,便是恢複。
恢複的類型。
instance recovery:讀取當前的資料檔案和聯機重做記錄檔(注意:不是歸檔記錄檔),來使資料檔案的檔案頭和控制檔案的SCN相同。
media recovery:需要用到DBA建立的備份來恢複,或者重新運用記錄檔
1)執行個體錯誤通常會導致兩個問題:
i)已提交的未寫入
ii)未提交的已寫入
針對這兩個問題,執行個體恢複分兩個步驟來處理:
a)緩衝恢複:將已提交的寫入。又名“前滾”
b)事物恢複:將未提交的撤銷。又名“復原”
2)通常提到的介質恢複,都是指對資料檔案的恢複。
恢複的方式
完全恢複
不完全恢複
1)將所需資料恢複到最近的時間點的恢複方式就是完全恢複。
2)由於不完全恢複只運用部分記錄檔,所以,必須給oracle指定結束標誌。如下:
a)基於時間
b)基於SCN
c)基於cancel
d)基於記錄序號
恢複的步驟
restore
recover
1)restore相當於linux中的cp命令
2)recover是指運用所有重做記錄檔,將資料庫恢複到崩潰前的狀態;或者,運用部分重做記錄檔,將資料庫恢複到指定的時間點。