黃舉榮 湯湛成 趙剛
摘要:隨著計(jì)算機(jī)、網(wǎng)絡(luò)及信息技術(shù)的飛速發(fā)展,數(shù)據(jù)的應(yīng)用是全方位的,深入到各個(gè)領(lǐng)域。隨著系統(tǒng)的運(yùn)行時(shí)間越來越長,數(shù)據(jù)量的日益增加,人們對數(shù)據(jù)的使用頻度及依賴性變得更強(qiáng)。隨之而來產(chǎn)生了數(shù)據(jù)的安全問題。數(shù)據(jù)庫是數(shù)據(jù)的集合地,數(shù)據(jù)庫的損壞、數(shù)據(jù)存儲(chǔ)介質(zhì)的損壞更是數(shù)據(jù)安全的重中之重。當(dāng)出現(xiàn)數(shù)據(jù)的物理損壞時(shí),數(shù)據(jù)的恢復(fù)又變得十分迫切。該文以O(shè)RACLE數(shù)據(jù)庫為例,以在做項(xiàng)目過程中親身經(jīng)歷,介紹數(shù)據(jù)庫安全的重要性及數(shù)據(jù)恢復(fù)的幾個(gè)步驟。
關(guān)鍵詞:數(shù)據(jù)庫;數(shù)據(jù)安全;數(shù)據(jù)恢復(fù)
中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)18-4304-02
2011年中,我作為項(xiàng)目經(jīng)理負(fù)責(zé)開發(fā)了某電信公司的經(jīng)營分析系統(tǒng)。主要構(gòu)建電信本地網(wǎng)綜合統(tǒng)一的數(shù)據(jù)中心平臺(tái),形成一個(gè)擴(kuò)展性強(qiáng)的本地?cái)?shù)據(jù)集市,為上層應(yīng)用提供了一套完善的數(shù)據(jù)模型規(guī)劃方案。基于數(shù)據(jù)規(guī)劃方案的基礎(chǔ)上對八大主題進(jìn)行分析,并提供各類業(yè)務(wù)的專題分析、即席查詢、智能取數(shù)、客戶經(jīng)理考核等系統(tǒng)模塊,將這幾個(gè)模塊進(jìn)行業(yè)務(wù)和應(yīng)用的集成,以滿足電信管理部門、運(yùn)維部門、市場營銷部門、產(chǎn)品策劃收益評估部門等從不同維度不同粒度進(jìn)行數(shù)據(jù)分析和信息展現(xiàn)。
系統(tǒng)采用oracle數(shù)據(jù)庫作為業(yè)務(wù)數(shù)據(jù)庫。數(shù)據(jù)庫服務(wù)器連接了存儲(chǔ)陣列柜,存儲(chǔ)陣列采用RAID 5的存儲(chǔ)配置方式。
系統(tǒng)順利于2011年7月上線。系統(tǒng)的投入使用,大大減輕了業(yè)務(wù)支撐部門對市場營銷部門的支持壓力。同時(shí),市場營銷部門也通過使用系統(tǒng),得到精確的營銷數(shù)據(jù),使得營銷成功率大大提升,系統(tǒng)獲得用戶好評。
2012年3月底,接到用戶的報(bào)障,數(shù)據(jù)庫無法連接,系統(tǒng)報(bào)表沒數(shù)據(jù)。通過初步檢查,確定是存儲(chǔ)陣列柜的磁盤有損壞。存放在損壞磁盤上的數(shù)據(jù)庫文件無法讀取,導(dǎo)致ORACLE數(shù)據(jù)庫無法啟動(dòng),系統(tǒng)癱瘓了。
該電信公司每個(gè)月底和月初都是經(jīng)營分析、總結(jié)的時(shí)間段,這些分析、總結(jié)數(shù)據(jù)都來自我們開發(fā)經(jīng)營分析系統(tǒng)。用戶要求我們盡快恢復(fù)系統(tǒng)。
數(shù)據(jù)庫數(shù)據(jù)的丟失、損壞使得數(shù)據(jù)庫管理員身心疲憊。使我們深刻認(rèn)識(shí)到:數(shù)據(jù)庫系統(tǒng)作為信息的聚集體,是計(jì)算機(jī)信息系統(tǒng)的核心部件,其安全性至關(guān)重要,關(guān)系到系統(tǒng)的使用、營銷業(yè)績的提升甚至企業(yè)的發(fā)展。數(shù)據(jù)庫系統(tǒng)在給人們帶來好處的同時(shí),也對用戶提出了更高的安全方面的要求,必須引起最夠的重視。
1數(shù)據(jù)安全檢查過程
1)檢查數(shù)據(jù)庫配置文件,發(fā)現(xiàn)正常。
2)數(shù)據(jù)庫服務(wù)無法正常啟動(dòng)。
3)查ORACLE數(shù)據(jù)庫日志,發(fā)現(xiàn)無法讀取部分?jǐn)?shù)據(jù)文件。
4)檢查磁盤,發(fā)現(xiàn)連接的存儲(chǔ)陣列柜消失,對應(yīng)盤符找不到。
5)通過服務(wù)器磁盤管理器,發(fā)現(xiàn)連接到服務(wù)器的磁盤陣列有9.3T左右的磁盤未分配(圖1)。
圖1
6)通過磁盤陣列管理軟件去監(jiān)控磁盤陣列的運(yùn)行情況,發(fā)現(xiàn)陣列的12個(gè)硬盤中,有3個(gè)硬盤亮警示燈——黃燈(圖2)。
圖2
7)磁盤陣列日志文件分析。
最終結(jié)論:存放數(shù)據(jù)庫數(shù)據(jù)文件的磁盤陣列有損壞磁盤。
硬盤的物理損壞,可能的原因有幾個(gè):
不正確地開、關(guān)主機(jī)電源或電壓不穩(wěn)定,如經(jīng)常強(qiáng)行關(guān)機(jī),未使用UPS等情形。硬盤在讀寫數(shù)據(jù)時(shí)受到震動(dòng),特別是強(qiáng)烈的震動(dòng)。
硬盤散熱不好,使工作時(shí)溫度太高。
使用環(huán)境不好。
2數(shù)據(jù)的恢復(fù)
既然出現(xiàn)了數(shù)據(jù)文件無法讀取,磁盤損壞的情況,必須通過數(shù)據(jù)恢復(fù)軟件來實(shí)現(xiàn)數(shù)據(jù)的找回。
數(shù)據(jù)恢復(fù)軟件包含邏輯層恢復(fù)和物理層恢復(fù)功能,邏輯層恢復(fù)通常是指誤刪除、誤克隆、誤格式化、分區(qū)丟失、病毒感染等情況,物理層恢復(fù)是指由于硬件物理損傷引起的丟失數(shù)據(jù)恢復(fù),如:電機(jī)卡死、盤片物理壞道、硬盤電腦不識(shí)別、磁頭移位等。該文闡述的數(shù)據(jù)恢復(fù)是物理層的恢復(fù)。
對于磁盤陣列大容量的數(shù)據(jù)恢復(fù),并且要恢復(fù)的數(shù)據(jù)是ORACLE數(shù)據(jù)庫的數(shù)據(jù)文件,數(shù)據(jù)恢復(fù)后還需通過ORACLE數(shù)據(jù)庫打開來驗(yàn)證。使得對損壞數(shù)據(jù)的恢復(fù)需要的時(shí)間較長及較多的步驟。綜合考慮,可以采用兩種方案:
1)先把壞的磁盤做鏡像→然后用鏡像后的磁盤替換壞磁盤→啟動(dòng)數(shù)據(jù)庫。如果數(shù)據(jù)庫可以啟動(dòng)并且能打開數(shù)據(jù)文件,則這個(gè)方案成功。這個(gè)方案的成本低,時(shí)間短,但成功的幾率很小。
2)先把壞的磁盤做鏡像→然后搭建與原來數(shù)據(jù)庫相同的環(huán)境→連接磁盤陣列的磁盤→備份數(shù)據(jù)→分析備份數(shù)據(jù)→重新配置磁盤陣列→數(shù)據(jù)還原。這個(gè)方案的時(shí)間長,需要的設(shè)備多(備份硬盤、相同環(huán)境),但成功的幾率大。
下面重點(diǎn)介紹我們采用的第二個(gè)方案:
超級(jí)硬盤數(shù)據(jù)恢復(fù)軟件,采用最新的數(shù)據(jù)掃描引擎,從磁盤底層讀出原始的扇區(qū)數(shù)據(jù),經(jīng)過高級(jí)的數(shù)據(jù)分析算法,把丟失的目錄和文件在內(nèi)存中重建出原分區(qū)和原來的目錄結(jié)構(gòu),可以恢復(fù)被刪除或者格式化或者分區(qū)丟失的數(shù)據(jù),支持IDE/SCSI/SATA/USB移動(dòng)硬盤/SD卡/U盤/RAID磁盤等多種存貯介質(zhì),支持FAT/FAT32/NTFS/exFAT等Windows操作系統(tǒng)常用的文件系統(tǒng)格式。將損壞磁盤的數(shù)據(jù)重建到新磁盤上,能最大程度的恢復(fù)數(shù)據(jù)。
在使用這個(gè)數(shù)據(jù)恢復(fù)軟件之前,環(huán)境的搭建也是一項(xiàng)艱巨工程。首先需要大容量的硬盤來作為整個(gè)磁盤陣列的備份盤。一般一個(gè)磁盤的容量起碼達(dá)到1T容量。其次把這么多磁盤連接到模擬環(huán)境上,還需要硬盤并口轉(zhuǎn)換卡,備份盤的連接需要硬盤接口雙向轉(zhuǎn)換卡。最后,還得多個(gè)大功率的電源來對多個(gè)硬盤供電。
經(jīng)過一個(gè)多星期的多次反復(fù)的數(shù)據(jù)分析對比,數(shù)據(jù)的恢復(fù)順利完成。
數(shù)據(jù)恢復(fù)的幾點(diǎn)注意事項(xiàng):
1)避免在原磁盤上進(jìn)行操作,一旦出現(xiàn)誤操作,將增加數(shù)據(jù)恢復(fù)的難度。
2)不要把數(shù)據(jù)恢復(fù)到源盤上。容易破壞原來的數(shù)據(jù),甚至破壞沒有問題的數(shù)據(jù)。
3)不要在磁盤陣列上線損壞的磁盤,這樣容易導(dǎo)致陣列崩潰,加大損壞的數(shù)據(jù)文件。
4)在通過數(shù)據(jù)庫來驗(yàn)證恢復(fù)的文件是否正常時(shí),最好能把數(shù)據(jù)庫的控制文件先備份,以免在打開恢復(fù)文件時(shí),改變了數(shù)據(jù)庫控制文件,從而增加數(shù)據(jù)庫的恢復(fù)難度。
5)要等數(shù)據(jù)全部恢復(fù)到另外一個(gè)盤或者硬盤后,要打開文件仔細(xì)檢查,確定都恢復(fù)對了,才能往源盤里面拷回去,不能恢復(fù)一部分就拷回一部分,往源盤拷數(shù)據(jù)會(huì)影響下一次的數(shù)據(jù)恢復(fù)。
在該文最后要強(qiáng)調(diào)的是,對于不同的數(shù)據(jù)庫產(chǎn)品,都具備成熟的安全實(shí)現(xiàn)手段,應(yīng)用這些安全手段就能夠?qū)崿F(xiàn)對于數(shù)據(jù)的基本保護(hù),對于我們技術(shù)人最重要的是:認(rèn)識(shí)和重視數(shù)據(jù)安全問題,并逐步推動(dòng)企業(yè)或組織應(yīng)用安全手段進(jìn)行數(shù)據(jù)安全的增強(qiáng)。
重視數(shù)據(jù),保護(hù)數(shù)據(jù),做好如下工作,是數(shù)據(jù)安全的有效措施!
1)制定好系統(tǒng)數(shù)據(jù)備份策略。
2)保證數(shù)據(jù)備份計(jì)劃的執(zhí)行。
3)加強(qiáng)硬件設(shè)備的日常巡檢及設(shè)備維護(hù)。
4)改善設(shè)備環(huán)境條件。
參考文獻(xiàn):
[1]蓋國強(qiáng).數(shù)據(jù)安全防范不可忽視提升需從今日做起[EB/OL].http://www.vsharing.com/print.aspxid=657779, 2012-4-25.