盧莉娜 胡雋 孟憲宇
摘要:本文闡述了實(shí)施校園一卡通Oracle數(shù)據(jù)庫(kù)的備份方案,在歸檔日志模式下,通過(guò)Networker備份軟件定時(shí)、自動(dòng)地將數(shù)據(jù)庫(kù)和歸檔日志備份到虛擬帶庫(kù),借助數(shù)據(jù)庫(kù)的全備份和歸檔日志,實(shí)現(xiàn)近乎無(wú)損的數(shù)據(jù)恢復(fù)。
關(guān)鍵詞:校園一卡通 Oracle備份 數(shù)據(jù)恢復(fù)
校園一卡通數(shù)據(jù)庫(kù)包含了用戶的資金賬目、身份信息和交易流水,數(shù)據(jù)庫(kù)軟硬件的損壞會(huì)造成業(yè)務(wù)中斷和數(shù)據(jù)丟失。因此,校園一卡通的數(shù)據(jù)安全顯得尤為重要。
容災(zāi)是為確?!盀?zāi)難”發(fā)生時(shí),減小數(shù)據(jù)損失和業(yè)務(wù)停頓的一整套技術(shù)方案。數(shù)據(jù)備份是數(shù)據(jù)容災(zāi)的基礎(chǔ),是數(shù)據(jù)庫(kù)可用的最后一道防線,一個(gè)完整的容災(zāi)方案必然包括備份部分。容災(zāi)方案中的數(shù)據(jù)始終在線,有被完全破壞的可能,但備份數(shù)據(jù)是離線數(shù)據(jù),即使在線數(shù)據(jù)丟失,也可以從備份數(shù)據(jù)中恢復(fù)。
一、Oracle數(shù)據(jù)庫(kù)備份概述
Oracle數(shù)據(jù)庫(kù)備份有三種類型,分別是導(dǎo)入/導(dǎo)出(EXP/IMP)、冷備份和熱備份。導(dǎo)入/導(dǎo)出是邏輯備份,利用Export將數(shù)據(jù)從數(shù)據(jù)庫(kù)中提取出來(lái),再利用Import將提取出來(lái)的數(shù)據(jù)送回到Oracle數(shù)據(jù)庫(kù)中;冷備份和熱備份是物理備份,直接拷貝數(shù)據(jù)庫(kù)的物理文件。邏輯備份和冷備份只能將數(shù)據(jù)恢復(fù)到備份執(zhí)行前的狀態(tài),而熱備份可以使數(shù)據(jù)恢復(fù)到任一時(shí)間點(diǎn)。
Oracle RMAN(恢復(fù)管理器)是Oracle提供的DBA工具,用于數(shù)據(jù)庫(kù)的備份和恢復(fù),它能夠備份整個(gè)數(shù)據(jù)庫(kù)或數(shù)據(jù)庫(kù)部件,其中包括表空間、數(shù)據(jù)文件、控制文件和歸檔文件。Networker通過(guò)調(diào)用RMAN的接口,來(lái)管理數(shù)據(jù)庫(kù)的備份和恢復(fù)操作。
二、校園一卡通數(shù)據(jù)庫(kù)備份
1.校園一卡通數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)
校園一卡通Oracle數(shù)據(jù)庫(kù)運(yùn)行于兩臺(tái)Sun v880小型機(jī)組成的HA集群上,數(shù)據(jù)存放在磁盤存儲(chǔ)陣列上。前期已經(jīng)實(shí)施了基于盤陣同步復(fù)制的數(shù)據(jù)容災(zāi)解決方案,使得在同一時(shí)刻兩個(gè)盤陣保存有相同的兩份校園一卡通數(shù)據(jù)副本,確保單個(gè)盤陣損壞時(shí)業(yè)務(wù)不中斷,數(shù)據(jù)零損失。
2.校園一卡通數(shù)據(jù)庫(kù)備份體系結(jié)構(gòu)
校園一卡通業(yè)務(wù)既要保持連續(xù)運(yùn)轉(zhuǎn),確保數(shù)據(jù)庫(kù)不停運(yùn),盡可能數(shù)據(jù)損失為零,所以選擇了Oracle數(shù)據(jù)庫(kù)歸檔日志模式下的熱備份。采用Net-worker作為備份軟件,DataDomain虛擬帶庫(kù)作為備份存儲(chǔ)介質(zhì),每天定時(shí)地進(jìn)行Oracle全庫(kù)及歸檔日志的備份。
Networker備份服務(wù)器通過(guò)LAN與數(shù)據(jù)庫(kù)服務(wù)器連接,備份服務(wù)器與虛擬帶庫(kù)以FC(光纖通道)連接。兩臺(tái)Sun服務(wù)器上均安裝有Networker客戶端和Oracle模塊,通過(guò)Networker服務(wù)器上的控制臺(tái)可以管理客戶機(jī)上的備份和恢復(fù)任務(wù)。
3.啟用Oracle數(shù)據(jù)庫(kù)歸檔日志模式
第一步,關(guān)閉數(shù)據(jù)庫(kù),并以裝載方式啟動(dòng)。
SQL>shutdown immediate;
SQL>startup mount;
第二步,更改數(shù)據(jù)庫(kù)為歸檔日志模式。
SQL>alter database archivelog;
第三步,打開(kāi)數(shù)據(jù)庫(kù)
SQL > alter database open;
第四步,設(shè)置歸檔文件存放位置。
SQL>alter system. set LOG_ARCHIVE_DEST_1=
LOCATION=/export/oracle/arch;
第五步,設(shè)置歸檔文件格式。
SQL>alter system set log archive_format=ar-ch_%
t_% s. arc scope = spfile ;
第六步,啟動(dòng)自動(dòng)歸檔。
SQL>alter system set log _ archive_start=tmescope=
spfile ;
4.校園一卡通數(shù)據(jù)庫(kù)的備份策略
在Networker服務(wù)器的管理控制臺(tái)中設(shè)置一卡通數(shù)據(jù)庫(kù)的備份時(shí)間表,以控制數(shù)據(jù)庫(kù)和歸檔日志的備份。一卡通業(yè)務(wù)每天夜間12點(diǎn)開(kāi)始日結(jié),到第二天凌晨2點(diǎn)日結(jié)完畢。在凌晨2點(diǎn)到5點(diǎn),業(yè)務(wù)處于空閑期。假如設(shè)置在凌晨3點(diǎn)半進(jìn)行一次數(shù)據(jù)庫(kù)的全備份,整個(gè)時(shí)間大約28分鐘;每天9點(diǎn)、15點(diǎn)、21點(diǎn)進(jìn)行歸檔日志的備份,每次耗時(shí)2分半鐘。
三、數(shù)據(jù)庫(kù)恢復(fù)測(cè)試
準(zhǔn)備一臺(tái)恢復(fù)測(cè)試機(jī),該機(jī)既要和源備份主機(jī)操作系統(tǒng)類型一致,Oracle版本一致,數(shù)據(jù)庫(kù)實(shí)例名一致,同時(shí)也需要安裝Networker客戶端軟件和Oracle模塊。測(cè)試時(shí),首先要獲取源主機(jī)Oracle的DBID,恢復(fù)時(shí)必須在目標(biāo)端指定。然后,關(guān)閉恢復(fù)目標(biāo)機(jī)上的數(shù)據(jù)庫(kù),進(jìn)入nomount狀態(tài),按照順序依次恢復(fù)pfile文件,控制文件,數(shù)據(jù)庫(kù)文件。接著,再執(zhí)行數(shù)據(jù)庫(kù)的recover,此過(guò)程將用到備份的日志文件。最后,恢復(fù)完成,打開(kāi)數(shù)據(jù)庫(kù),如果無(wú)報(bào)錯(cuò)則成功恢復(fù)。
校園一卡通數(shù)據(jù)備份是一卡通數(shù)據(jù)容災(zāi)方案必不可少的部分,利用備份的數(shù)據(jù)成功地進(jìn)行了數(shù)據(jù)庫(kù)的恢復(fù),說(shuō)明該數(shù)據(jù)庫(kù)備份方案的有效性。
參考文獻(xiàn):
[1]孔凡航.Oracle 9i中文版基礎(chǔ)教程[M].北京:清華大學(xué)出版社,2007.
[2]趙元杰.Oracle 10g系統(tǒng)管理員簡(jiǎn)明教程[M].北京:人民郵電出版社,2006.
[3]王興玲.Oracle I0g影像庫(kù)的設(shè)計(jì)及應(yīng)用模式分析[J].遙感技術(shù)與應(yīng)用,2006,(5).
(作者單位:武漢軍械士官學(xué)校)endprint