掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流
備份的目的在于,當系統(tǒng)或數(shù)據(jù)庫出現(xiàn)問題時,能夠快速將數(shù)據(jù)庫進行恢復。對于Oracle數(shù)據(jù)庫,一般有兩種備份方式: “物理備份”和“邏輯備份”?!拔锢韨浞荨敝傅氖且詂opy數(shù)據(jù)文件方式進行備份;“邏輯備份”指的是用export等方式將數(shù)據(jù)從數(shù)據(jù)庫中抽取出來。物理備份又可以分為冷備份和熱備份。以下是各種備份的說明及前提條件。
◆Cold Backup(冷備份) 主要指在關閉數(shù)據(jù)庫的狀態(tài)下進行的數(shù)據(jù)庫完全備份,備份內容包括所有數(shù)據(jù)文件、控制文件、聯(lián)機日志文件、ini文件。
◆Hot Backup(熱備份) 指在數(shù)據(jù)庫處于運行狀態(tài)下,對數(shù)據(jù)文件和控制文件進行備份,要使用熱備份必須將數(shù)據(jù)庫運行在(Archive Log)歸檔方式下。
◆Export(邏輯備份)這是最簡單的備份方法,可按數(shù)據(jù)庫中某個表、某個用戶或整個數(shù)據(jù)庫來導出,并且支持全部、累計、增量三種方式。使用這種方法,數(shù)據(jù)庫必須處于打開狀態(tài),而且如果數(shù)據(jù)庫不是在restrict狀態(tài)將不能保證導出數(shù)據(jù)的一致性。

站在用戶的角度思考問題,與客戶深入溝通,找到仁布網(wǎng)站設計與仁布網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設計與互聯(lián)網(wǎng)技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站設計制作、成都網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名申請、雅安服務器托管、企業(yè)郵箱。業(yè)務覆蓋仁布地區(qū)。
“物理備份”方式以相當于copy數(shù)據(jù)文件的方式進行備份,恢復時可以快速以相當于copy的方式將備份的數(shù)據(jù)copy回來,所以備份速度特別是恢復速度非常快。
如果不采用Oracle Archive Log模式,只有兩種可用的備份方法:冷備份或export邏輯備份。根據(jù)關鍵業(yè)務服務器的特點,停下數(shù)據(jù)庫進行冷備份是根本不可能的,因此如果不采用Archive Log,只能進行邏輯備份。
如果僅采用“邏輯備份”方式,恢復時會有以下兩個主要問題:
1. 無法恢復到最近時間點的數(shù)據(jù)。只能恢復到上一次export時的數(shù)據(jù)狀態(tài),當天的數(shù)據(jù)將丟失。Oracle Archive Log模式下的物理備份可以用數(shù)據(jù)文件備份及Archive Log備份,將數(shù)據(jù)庫恢復到數(shù)據(jù)庫失敗前的時間點,不會丟失數(shù)據(jù)。
2. 完成恢復可能需要很長時間。恢復只能用import方法進行,所以需要的時間包括:
a. create database及所有的tablespace: 以每2分鐘初始化一個2G的數(shù)據(jù)文件來計算,建立一個400G的Oracle數(shù)據(jù)庫需要約6.7個小時。
b. import。時間較難確定,但保守估計應在10個小時以上(如果import過程中出現(xiàn)問題,恢復時間將延長)
3. 恢復時步驟較多,易出現(xiàn)人為故障。
由于 這些原因,一般備份/恢復時都把export/import的方式做為輔助備份/恢復方式,對一些重要的表進行二級保護。這種備份方式也稱為“邏輯備份”方式,當某些重要的表被意外刪除時可進行邏輯import恢復。
而對于整個數(shù)據(jù)庫的日常備份/恢復,需要采用“物理備份”方式,即以相當于copy數(shù)據(jù)文件的方式進行備份,恢復時可以快速以相當于copy的方式將備份的數(shù)據(jù)copy回來。一般物理備份/恢復都采用Oracle RMAN工具來進行。
下面是“邏輯備份”與“物理備份”在數(shù)據(jù)庫故障時的恢復比較:
1. Oracle邏輯錯誤造成無法啟動
邏輯恢復: 重新create database及各tablespace,import??苫謴偷缴洗蝒xport的數(shù)據(jù)
物理恢復: 將所有datafile copy回來,并利用Archive Log將數(shù)據(jù)庫recover到故障前的狀態(tài)
2. 某一個datafile故障或丟失
邏輯恢復: 重新create database及各tablespace,import。可恢復到上次export的數(shù)據(jù)
物理恢復: 將該datafile copy回來
3. 某一個tablespace故障
邏輯恢復: 重新create database及各tablespace,import??苫謴偷缴洗蝒xport的數(shù)據(jù)
物理恢復: 將該tablespace copy回來
4. 意外drop table
邏輯恢復: Import 該table
物理恢復: 將備份恢復到另一服務器上,export該table,在原數(shù)據(jù)庫中import
5. 意外drop user
邏輯恢復: Import 該user
物理恢復: 將備份恢復到另一服務器上,export該user,在原數(shù)據(jù)庫中import
6. 意外drop tablespace
邏輯恢復: 情況較復雜,恢復易造成數(shù)據(jù)庫表之間的參照完整性被破壞。在此不做分析
物理恢復: 情況較復雜,恢復易造成數(shù)據(jù)庫表之間的參照完整性被破壞。在此不做分析
在進行數(shù)據(jù)庫的恢復時,一定要了解Oracle Archive Log模式的原理,分析故障的原因,然后針對故障的情況進行相應的恢復。例如以下情況:
◆Oracle程序文件損壞?
◆control file損壞?
◆Online redo log損壞?
◆datafile損壞?
◆archive log損壞?
◆table或其中數(shù)據(jù)被意外刪除?

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流