都可以用作備份,但是exp類似冷備份, 你只能夠恢復到某一點
而rman的話,需要開啟歸檔,那樣就可以進行無資料丟失的恢復。
詳細點說就是:
在不開歸檔日誌的情況下,Oracle資料庫的備份只能依賴exp命令(邏輯備份)匯出資料檔案(注意:不包括日誌檔案以及控制檔案等),匯出的所有資料僅僅以一個大檔案的方式來存放,但是這種備份容易導致丟失資料。舉個例子:如果5號晚上進行了exp資料匯出,但是在6號的執行過程中發生宕機,資料丟失,這個時候從5號備份後一直到6號宕機前的資料將全部丟失(即使將日誌檔案和控制檔案拷出來都無法恢復,因為exp匯出的資料無法與這些日誌檔案一一對應起來恢復)。所以採用exp方式備份資料還是存在很大風險的。
另一種方式就是使用Oracle自帶的備份工具rman。一次rman備份(物理備份)的全過程如下:
因為使用rman備份不會產生資料丟失的情況,所以必須有一個全備份的檔案,使用rman需要先進行一次全備份,相當於將當前資料庫裡面的所有檔案以及日誌都全盤複製一份到備份介質中,然後透過歸檔日誌(實時更新的)的記錄看每個程序都對資料庫做了哪些修改,只要保留了一份物理備份以及物理備份之後的所有歸檔日誌,就能夠將資料庫恢復到宕機前一刻的狀態,將資料丟失降到最低。(每個redo log寫滿之後就開始寫到achive log裡面進行歸檔,這個裡面還是有個時間段的,不能做到完全的實時)
都可以用作備份,但是exp類似冷備份, 你只能夠恢復到某一點
而rman的話,需要開啟歸檔,那樣就可以進行無資料丟失的恢復。
詳細點說就是:
在不開歸檔日誌的情況下,Oracle資料庫的備份只能依賴exp命令(邏輯備份)匯出資料檔案(注意:不包括日誌檔案以及控制檔案等),匯出的所有資料僅僅以一個大檔案的方式來存放,但是這種備份容易導致丟失資料。舉個例子:如果5號晚上進行了exp資料匯出,但是在6號的執行過程中發生宕機,資料丟失,這個時候從5號備份後一直到6號宕機前的資料將全部丟失(即使將日誌檔案和控制檔案拷出來都無法恢復,因為exp匯出的資料無法與這些日誌檔案一一對應起來恢復)。所以採用exp方式備份資料還是存在很大風險的。
另一種方式就是使用Oracle自帶的備份工具rman。一次rman備份(物理備份)的全過程如下:
因為使用rman備份不會產生資料丟失的情況,所以必須有一個全備份的檔案,使用rman需要先進行一次全備份,相當於將當前資料庫裡面的所有檔案以及日誌都全盤複製一份到備份介質中,然後透過歸檔日誌(實時更新的)的記錄看每個程序都對資料庫做了哪些修改,只要保留了一份物理備份以及物理備份之後的所有歸檔日誌,就能夠將資料庫恢復到宕機前一刻的狀態,將資料丟失降到最低。(每個redo log寫滿之後就開始寫到achive log裡面進行歸檔,這個裡面還是有個時間段的,不能做到完全的實時)