文/潘紅巖
Oracle數(shù)據(jù)庫(kù)系統(tǒng)的備份是數(shù)據(jù)庫(kù)系統(tǒng)的基本功能,也是在軟件開發(fā)中常用的過程。Oracle數(shù)據(jù)庫(kù)系統(tǒng)的備份有多種方式,每種方式都有自己的優(yōu)缺點(diǎn),用戶必須根據(jù)自己的實(shí)際需要,選擇相應(yīng)的Oracle數(shù)據(jù)庫(kù)系統(tǒng)的備份方式。一旦數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)受到病毒等破壞,人為的誤刪除等,必須利用Oracle數(shù)據(jù)庫(kù)系統(tǒng)的恢復(fù)技術(shù),把相應(yīng)的數(shù)據(jù)進(jìn)行恢復(fù),保障軟件開發(fā)的需要,基于Oracle數(shù)據(jù)庫(kù)系統(tǒng)的備份和恢復(fù)技術(shù)研究是符合現(xiàn)代數(shù)據(jù)庫(kù)系統(tǒng)的發(fā)展需要,也是為軟件開發(fā)等計(jì)算機(jī)相關(guān)職業(yè)的需要,對(duì)計(jì)算機(jī)軟件開發(fā)等提供有力的數(shù)據(jù)支持。
邏輯備份是Oracle 數(shù)據(jù)庫(kù)系統(tǒng)的常用備份方法之一,其主要通過 Oracle Export 工具把系統(tǒng)中需要備份的對(duì)象導(dǎo)出,將其存儲(chǔ)在 OS文件中,當(dāng) Oracle 數(shù)據(jù)庫(kù)系統(tǒng)需要用到備份數(shù)據(jù)時(shí),就可通過 Oracle Import 工具把備份數(shù)據(jù)重新導(dǎo)進(jìn)。邏輯備份實(shí)際就是利用Export程序?qū)racle 數(shù)據(jù)庫(kù)系統(tǒng)相應(yīng)的文件根據(jù)實(shí)際需要從數(shù)據(jù)庫(kù)導(dǎo)出進(jìn)行有效備份,防止數(shù)據(jù)受到破壞等因素,一定數(shù)據(jù)庫(kù)系統(tǒng)需要進(jìn)行實(shí)際工作,還利用Export 程序把相應(yīng)的數(shù)據(jù)導(dǎo)入Oracle 數(shù)據(jù)庫(kù)系統(tǒng),保障Oracle 數(shù)據(jù)庫(kù)系統(tǒng)能正常的工作。
物理備份是Oracle 數(shù)據(jù)庫(kù)系統(tǒng)的常用備份方法之一,也是簡(jiǎn)單的數(shù)據(jù)庫(kù)系統(tǒng)備份形式。一種冷備份就是利用數(shù)據(jù)庫(kù)系統(tǒng)的備份工具進(jìn)行數(shù)據(jù)備份,在備份的過程中軟件是關(guān)閉的,不能進(jìn)行數(shù)據(jù)的恢復(fù)。另一種是熱備份,在數(shù)據(jù)庫(kù)系統(tǒng)在運(yùn)行的過程中進(jìn)行備份,能對(duì)數(shù)據(jù)進(jìn)行恢復(fù)等操作,但總體操作難度大,數(shù)據(jù)測(cè)試也不方便,同時(shí)加大數(shù)據(jù)開銷,不太適合數(shù)據(jù)備份需求。
恢復(fù)管理器備份有完全備份和增量備份兩種形式。完全備份就是數(shù)據(jù)庫(kù)在工作過程中,需要把所有的數(shù)據(jù)進(jìn)行備份,這種備份系統(tǒng)開銷比較大,但其數(shù)據(jù)能保障其完整性。增量備份就是把數(shù)據(jù)修改和添加的進(jìn)行備份,這是數(shù)據(jù)備份速度快,能節(jié)省系統(tǒng)的開銷,但在實(shí)際工作過程中,有的時(shí)候可能造成數(shù)據(jù)的丟失,建立完善的數(shù)據(jù)備份日志這是軟件開發(fā)的基本需求,在實(shí)際工作過程中,根據(jù)工作需要選擇合適的恢復(fù)管理器備份的方式。
RMAN 恢復(fù)操作時(shí),其主要有以下操作流程:
(1)版本必須統(tǒng)一;
(2)測(cè)試的環(huán)境變量以及變量的選定應(yīng)該相匹配,比如“export ORACLE_SID=test”必須對(duì)應(yīng)好;
(3)創(chuàng)建的 RMAN 恢復(fù)文件和恢復(fù)目錄必須對(duì)照好安裝的 Oracle 服務(wù)器;
(4)復(fù)制以及存儲(chǔ)的 RMAN 備中的文檔信息必須正確對(duì)應(yīng) Oracle 數(shù)據(jù)庫(kù)中恢復(fù)管理器;
(5)RMAN 恢復(fù) Oracle 數(shù)據(jù)庫(kù)時(shí),注意運(yùn)算符和操作指令的級(jí)別。
介質(zhì)恢復(fù)主要有完全恢復(fù)和不完全恢復(fù)兩種形式。完全恢復(fù)就是恢復(fù)到?jīng)]有備份之間的狀態(tài),利用更換數(shù)據(jù)日志的形式,讓其恢復(fù)到數(shù)據(jù)的最佳點(diǎn),完全恢復(fù)是比較徹底,但恢復(fù)過程中需要占有大量的數(shù)據(jù)開銷,恢復(fù)速度相對(duì)比較慢。不完全恢復(fù)就是恢復(fù)到?jīng)]有備份之前的部分,不完全恢復(fù)不能對(duì)Oracle 數(shù)據(jù)庫(kù)進(jìn)行其恢復(fù)操作,主要針對(duì)整個(gè)Oracle 數(shù)據(jù)庫(kù)系統(tǒng)的。介質(zhì)恢復(fù)是Oracle 數(shù)據(jù)庫(kù)系統(tǒng)常用的數(shù)據(jù)恢復(fù)方式,用戶在實(shí)際應(yīng)用的過程中,需要根據(jù)系統(tǒng)的實(shí)際情況選擇合適的數(shù)據(jù)庫(kù)系統(tǒng)恢復(fù)方式,保障數(shù)據(jù)庫(kù)系統(tǒng)數(shù)據(jù)的完整性,讓數(shù)據(jù)庫(kù)在軟件開發(fā)過程中發(fā)揮相應(yīng)的作用。
實(shí)例恢復(fù)對(duì)象主要為斷電斷網(wǎng)、計(jì)算機(jī)硬件設(shè)備出現(xiàn)故障、計(jì)算機(jī)操作系統(tǒng)不靈等引起的數(shù)據(jù)損壞和數(shù)據(jù)丟失,所以在實(shí)例恢復(fù)中需要識(shí)別數(shù)據(jù)庫(kù)中已經(jīng)緩存的數(shù)據(jù),并將其存儲(chǔ)到數(shù)據(jù)文件中,從而使得數(shù)據(jù)庫(kù)的可靠性和一致性有保障,所有恢復(fù)流程都是數(shù)據(jù)庫(kù)操作系統(tǒng)自行實(shí)現(xiàn)。因此,聯(lián)機(jī)備份中的日志和數(shù)據(jù)文件可以選用實(shí)例恢復(fù),實(shí)例恢復(fù)分為Rolling Forward 和 Rolling Back 兩個(gè)階段。
總之,Oracle數(shù)據(jù)庫(kù)系統(tǒng)是軟件開發(fā)中常用的數(shù)據(jù)庫(kù)軟件,其功能特點(diǎn)是適合大型數(shù)據(jù)開發(fā)的需要,現(xiàn)在軟件開發(fā)都是網(wǎng)絡(luò)版本,每個(gè)軟件都需要大量的數(shù)據(jù)支持,Oracle數(shù)據(jù)庫(kù)系統(tǒng)是現(xiàn)代軟件開發(fā)中首選的數(shù)據(jù)庫(kù)軟件。Oracle數(shù)據(jù)庫(kù)系統(tǒng)備份和恢復(fù)技術(shù)研究是符合現(xiàn)代數(shù)據(jù)庫(kù)系統(tǒng)的發(fā)展需要,同時(shí)也能給軟件開發(fā)等計(jì)算機(jī)相關(guān)職業(yè)崗位能力培養(yǎng)需要,保障用戶在軟件開發(fā)過程中提供完整的數(shù)據(jù),促使軟件開發(fā)順利完成。