邱俊強(qiáng)
(廣東交通職業(yè)技術(shù)學(xué)院,廣東廣州510650)
?
淺探Interlib圖書館管理系統(tǒng)數(shù)據(jù)備份恢復(fù)
邱俊強(qiáng)
(廣東交通職業(yè)技術(shù)學(xué)院,廣東廣州510650)
摘要:文中概述了Interlib圖書館集群管理系統(tǒng)的特性,結(jié)合該系統(tǒng)在圖書館應(yīng)用中服務(wù)器配置的實(shí)際情況,從數(shù)據(jù)的安全性、可靠性出發(fā),對Interlib系統(tǒng)的數(shù)據(jù)備份及恢復(fù)方案進(jìn)行探討。
關(guān)鍵詞:數(shù)據(jù)備份;數(shù)據(jù)恢復(fù);Interlib;Oracle
在網(wǎng)絡(luò)環(huán)境下,為滿足讀者日益增長的信息需求,圖書館購置的各類文獻(xiàn)資源在逐年增加,為讀者提供的服務(wù)功能和服務(wù)模式也在不斷的增強(qiáng)和變化。圖書管理系統(tǒng)的數(shù)據(jù)量越來越大,舊版的圖書管理系統(tǒng)局限性日益凸顯,嚴(yán)重制約著圖書館的管理水平與服務(wù)質(zhì)量。廣東交通職業(yè)技術(shù)學(xué)院在經(jīng)過多次調(diào)研后,綜合系統(tǒng)平臺、功能擴(kuò)展、發(fā)展前景、用戶反饋以及售價、售后服務(wù)等多方面因素考慮,引進(jìn)了廣州圖創(chuàng)計算機(jī)軟件開發(fā)有限公司新一代的Interlib圖書館集群管理系統(tǒng)(以下簡稱Interlib系統(tǒng))。Interlib系統(tǒng)基于Oracle數(shù)據(jù)庫構(gòu)建,采用B/S模式,所有數(shù)據(jù)都存儲于服務(wù)器端,為此,在盡可能低的運(yùn)作成本前提下,如何有效地防范系統(tǒng)突發(fā)故障,確保數(shù)據(jù)安全、可靠、可用,已成為圖書館信息化工作的重要研究課題。
廣東交通職業(yè)技術(shù)學(xué)院圖書館于2015年引進(jìn)Interlib圖書館管理系統(tǒng)。目前,該系統(tǒng)架設(shè)在兩臺服務(wù)器上,其中一臺安裝了Oracle數(shù)據(jù)庫系統(tǒng),另一臺則負(fù)責(zé)Web應(yīng)用,包括業(yè)務(wù)處理模塊及聯(lián)機(jī)公共查詢目錄(Opac)模塊,現(xiàn)該系統(tǒng)各項(xiàng)功能模塊運(yùn)行狀況良好。
3.1 Interlib系統(tǒng)概述
Interlib系統(tǒng)是新一代的文獻(xiàn)信息管理系統(tǒng),使用Java技術(shù),遵照J(rèn)2EE標(biāo)準(zhǔn),三層體系結(jié)構(gòu),利用Internet實(shí)現(xiàn)傳統(tǒng)業(yè)務(wù)管理與海量數(shù)字資源管理的結(jié)合。該系統(tǒng)具有較好的擴(kuò)展性和安全性,具備強(qiáng)大的技術(shù)升級能力;整體支持跨平臺,可以在各種主流硬件平臺和操作系統(tǒng)上運(yùn)行;還支持主流的Web服務(wù)器,容易整合各種資源,使用方便,采用瀏覽器就可以訪問、管理整個系統(tǒng)平臺。
3.2 數(shù)據(jù)庫及其故障因素
Interlib系統(tǒng)采用了當(dāng)前流行的Oracle數(shù)據(jù)庫,其在數(shù)據(jù)安全性與數(shù)據(jù)完整性控制方面性能優(yōu)越,具有可移植性好、使用方便、功能強(qiáng)等特點(diǎn)。當(dāng)然,Oracle數(shù)據(jù)庫出現(xiàn)故障的因素也不少,如語句故障、進(jìn)程故障、用戶錯誤、實(shí)例故障、介質(zhì)故障[1]等,所有這些故障將會導(dǎo)致數(shù)據(jù)直接或間接的損失。因此,對于故障出現(xiàn)的因素也應(yīng)了解,并制定科學(xué)、合理的數(shù)據(jù)備份恢復(fù)方案。
3.3 數(shù)據(jù)庫備份恢復(fù)方式
數(shù)據(jù)對于數(shù)據(jù)庫軟件來說是血液之本,一旦丟失,那數(shù)據(jù)庫管理軟件就失去了存在的意義[2]。Interlib系統(tǒng)的所有業(yè)務(wù)數(shù)據(jù)都存儲于Oracle數(shù)據(jù)庫中,因此,Interlib系統(tǒng)的數(shù)據(jù)備份與恢復(fù),實(shí)際上也就是Oracle數(shù)據(jù)庫的備份與恢復(fù)。
Oracle數(shù)據(jù)庫具有完善的備份與恢復(fù)功能。除了硬件級的備份恢復(fù)(如RADI1、雙機(jī)熱備等)之外,還包括邏輯備份和物理備份恢復(fù)。備份實(shí)際上是為數(shù)據(jù)準(zhǔn)備一個副本,以備在發(fā)生數(shù)據(jù)丟失和應(yīng)用錯誤時,可以利用它還原數(shù)據(jù),從而降低損失,規(guī)避風(fēng)險[3]。針對不同的備份,恢復(fù)的方式和方案也略有不同。
Oracle的備份與恢復(fù)有三種標(biāo)準(zhǔn)的模式,大致分為兩大類,備份恢復(fù)(物理上的)以及導(dǎo)入導(dǎo)出(邏輯上的),而備份恢復(fù)又可以根據(jù)數(shù)據(jù)庫的工作模式分為非歸檔模式(Nonarchivelog-style)和歸檔模式(Archivelog-style)。通常,我們把非歸檔模式稱為冷備份,而相應(yīng)的把歸檔模式稱為熱備份。
Oracle的這三種備份恢復(fù)方式各有優(yōu)缺點(diǎn),如表1所示。
表1 Oracle三種備份恢復(fù)方式比較
以上三種備份方式,使用頻率最高的首推邏輯導(dǎo)入導(dǎo)出方式備份。鑒于冷備份只能在關(guān)機(jī)時使用,熱備份過程較為復(fù)雜和脆弱。因此,本文將探討采用邏輯備份的方式。
4.1 系統(tǒng)總體架構(gòu)設(shè)計
圖1三種方案中方案1最簡單,只有一臺服務(wù)器,設(shè)計成本也最低,但安全性、穩(wěn)定性稍差,因?yàn)樗械某绦蚨技性谝慌_服務(wù)器上面運(yùn)行。方案2有兩臺服務(wù)器組成,安全性、穩(wěn)定性較好,Interlib系統(tǒng)運(yùn)行的程序可以由兩臺服務(wù)器分擔(dān)。而方案3最復(fù)雜,由3臺服務(wù)器組成,其中1號機(jī)和2號機(jī)組成了雙機(jī)熱備。正常情況下是1號機(jī)運(yùn)行,2號機(jī)備份,當(dāng)1號機(jī)出現(xiàn)故障無法運(yùn)行時,2號機(jī)啟動運(yùn)行暫時代替1號機(jī)提供服務(wù)。其安全性、穩(wěn)定性也最好,但設(shè)計成本高、復(fù)雜性較大。這三種方案的備份與恢復(fù)操作類似,在保證數(shù)據(jù)安全,降低成本,提高系統(tǒng)實(shí)用性的原則指導(dǎo)下[1],方案2架構(gòu)設(shè)計最佳,下面以方案2為例進(jìn)行分析。
(1)1號機(jī)和2號機(jī)可由小型機(jī)、虛擬機(jī)組成。小型機(jī)性能穩(wěn)定、價格貴,虛擬機(jī)實(shí)現(xiàn)簡單、配置快,資源可得到有效充分利用。
(2)在1號機(jī)中安裝運(yùn)行Oracle數(shù)據(jù)庫(同時安裝Interlib、Opac服務(wù),但平時處于關(guān)閉狀態(tài),當(dāng)2號機(jī)出現(xiàn)故障無法運(yùn)行時啟用)。
圖1 三種方案架構(gòu)設(shè)計
(3)在2號機(jī)中安裝運(yùn)行Interlib、Opac服務(wù)(同時安裝Oracle數(shù)據(jù)庫,平時也處于關(guān)閉狀態(tài),當(dāng)1號機(jī)出現(xiàn)故障無法運(yùn)行時啟用)。
4.2 備份方案實(shí)現(xiàn)
圖2為數(shù)據(jù)備份的基本架構(gòu)設(shè)計。在現(xiàn)代集群化管理的環(huán)境下,圖書館數(shù)據(jù)的安全很重要。這里以O(shè)racle的邏輯備份為主,1號機(jī)和2號機(jī)自動備份,3號機(jī)手動備份,結(jié)合光盤、移動硬盤、磁帶等介質(zhì)進(jìn)行Interlib系統(tǒng)的備份。
圖2 數(shù)據(jù)備份的基本構(gòu)架設(shè)計
4.2.1 所需設(shè)備
結(jié)合圖2中的數(shù)據(jù)備份基本架構(gòu)分析,首先,除正在使用的數(shù)據(jù)庫服務(wù)器(1號機(jī))外,還需要一臺Web應(yīng)用服務(wù)器(2號機(jī)),實(shí)現(xiàn)雙機(jī)自動備份。這樣做的好處在于,即使系統(tǒng)管理員請假沒有上班或者忘記了備份時也能保證有兩份備份分別存儲于兩臺服務(wù)器;同時,在2號機(jī)上也安裝了完整的Oracle數(shù)據(jù)庫,其版本及安裝環(huán)境與1號機(jī)一致,便于在1號機(jī)系統(tǒng)崩潰的情況下迅速恢復(fù)工作使用。其次,再增加一臺普通PC機(jī)(需要安裝Oracle數(shù)據(jù)庫客戶端軟件,配置能夠訪問數(shù)據(jù)庫服務(wù)器的TNS),由系統(tǒng)管理員進(jìn)行手動備份時使用。最后,就是使用其它存儲介質(zhì)進(jìn)行不定期數(shù)據(jù)備份,比如每學(xué)期或每年對備份數(shù)據(jù)進(jìn)行光盤刻錄備份等??傊?,使用備份機(jī),可以大幅度增加數(shù)據(jù)的安全性,防止其中任何一臺機(jī)器崩潰造成的數(shù)據(jù)丟失的問題。
4.2.2 備份設(shè)置
自動備份利用操作系統(tǒng)上的任務(wù)計劃,定時執(zhí)行邏輯備份。手動備份則由系統(tǒng)管理員在上班時間段內(nèi)完成。具體如下:
(1)1號機(jī)和2號機(jī)利用操作系統(tǒng)上的計劃任務(wù)每天交替?zhèn)浞?。比?號機(jī)是中午12∶30和晚上22∶00備份,那么2號機(jī)可在中午13∶00和晚上23∶00備份。備份數(shù)據(jù)保留一個星期或一個月即可,然后清理。
(2)3號機(jī)由系統(tǒng)管理員操作進(jìn)行手動備份,順便也可以檢查下當(dāng)天的備份數(shù)據(jù)是否有問題。系統(tǒng)管理員既可以通過FPT傳輸1號機(jī)上已經(jīng)備份好的數(shù)據(jù),也可以通過工具EXP把數(shù)據(jù)從遠(yuǎn)程數(shù)據(jù)庫服務(wù)器上導(dǎo)出到本地存儲。這樣即使1號機(jī)和2號機(jī)同時損壞,數(shù)據(jù)丟失,3號機(jī)還是可以恢復(fù)數(shù)據(jù),極大地提高了數(shù)據(jù)的安全性。
(3)最后,利用光盤、移動硬盤、磁帶等存儲介質(zhì)進(jìn)行不定期的數(shù)據(jù)備份,由系統(tǒng)管理員手動操作備份存檔,每學(xué)期保存一次即可。
4.3 邏輯備份恢復(fù)技術(shù)實(shí)現(xiàn)
邏輯備份恢復(fù)可用Oracle自身的導(dǎo)出/導(dǎo)入(Export/Import)命令進(jìn)行。利用Export可將數(shù)據(jù)從數(shù)據(jù)庫中提取出來,利用Import則可將提取出來的數(shù)據(jù)送回到Oracle數(shù)據(jù)庫中去。Oracle支持三種方式類型的輸出:
(1)表方式(T方式),將指定表的數(shù)據(jù)導(dǎo)出。
(2)用戶方式(U方式),將指定用戶的所有對象及數(shù)據(jù)導(dǎo)出。
(3)全庫方式(Full方式),將數(shù)據(jù)庫中的所有對象導(dǎo)出。
數(shù)據(jù)導(dǎo)出(Export)的過程是數(shù)據(jù)導(dǎo)入(Import)的逆過程。將數(shù)據(jù)庫數(shù)據(jù)導(dǎo)出到數(shù)據(jù)文件和將數(shù)據(jù)文件導(dǎo)入數(shù)據(jù)庫示例如下:
(1)將數(shù)據(jù)庫interlib中的表table1、table2導(dǎo)出
exp user/password@interlib file=c:***.dmp table=(table1,table2)(2)將數(shù)據(jù)庫中user用戶與sys用戶的表導(dǎo)出expuser/password@interlibfile=c:***.dmp owner=(user,sys)
(3)將數(shù)據(jù)庫完全導(dǎo)出,用戶名user密碼password
expuser/password@interlibfile=c:***.dmp full=y
(4)將數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫interlib
impuser/password@interlibfile=c:***.dmp full=y ignore=y
把以上命令行保存為.bat格式或者.sh格式的文件,即可在windows系列或linux系列操作系統(tǒng)上執(zhí)行邏輯備份恢復(fù)任務(wù)。
4.4 恢復(fù)操作
當(dāng)Oracle數(shù)據(jù)庫服務(wù)器出現(xiàn)突發(fā)故障而無法運(yùn)行,需要重裝操作系統(tǒng)時,此時可用備份數(shù)據(jù)恢復(fù),恢復(fù)操作可采用邏輯恢復(fù)命令進(jìn)行。結(jié)合圖1中的方案2系統(tǒng)總體架構(gòu)分析:
(1)若1號機(jī)軟件故障,僅操作系統(tǒng)或Oracle數(shù)據(jù)庫等軟件有問題,那么只需在1號機(jī)重新安裝操作系統(tǒng)或Oracle數(shù)據(jù)庫即可,然后利用備份數(shù)據(jù)恢復(fù)數(shù)據(jù)。若1號機(jī)硬件故障,一時無法修復(fù),此時可啟用2號機(jī)的Oracle服務(wù),然后用備份數(shù)據(jù)恢復(fù)數(shù)據(jù)庫,Interlib和Opac系統(tǒng)修改相應(yīng)的配置即可。
(2)若2號機(jī)故障,一時無法修復(fù),此時只需啟用1號機(jī)的Interlib和Opac服務(wù),用戶使用1號機(jī)的Interlib和Opac服務(wù)即可。
(3)以上(1)和(2)的數(shù)據(jù)恢復(fù)可以使系統(tǒng)恢復(fù)到機(jī)器出現(xiàn)故障之前的最近的一個備份狀態(tài),這樣可能會丟失幾個小時的數(shù)據(jù)。如果這些丟失的數(shù)據(jù)很重要,可以找專業(yè)的數(shù)據(jù)恢復(fù)公司找回丟失的數(shù)據(jù)。或者干脆采用方案3的系統(tǒng)架構(gòu),采用雙機(jī)熱備,理論上可以回溯到上一秒的操作數(shù)據(jù)。
圖書館的業(yè)務(wù)工作幾乎都要用到Interlib系統(tǒng),而Interlib系統(tǒng)在運(yùn)行過程中也可能因?yàn)楹诳汀⒉《镜娜肭只蛴布膿p壞導(dǎo)致系統(tǒng)無法正常使用,因此,需要系統(tǒng)管理員采取相應(yīng)措施做好數(shù)據(jù)的備份恢復(fù)工作。本文從數(shù)據(jù)的安全角度出發(fā),探討數(shù)據(jù)庫的備份恢復(fù)方法,為Interlib系統(tǒng)正常運(yùn)行提供保障,有效降低各種意外所帶來的不利影響。
參考文獻(xiàn):
[1]冷建華.論oracle數(shù)據(jù)庫備份與恢復(fù)策略[J].信息通信,2015,(12):142-143.
[2]徐小亞,謝延華.基于Oracle數(shù)據(jù)庫的備份和恢復(fù)分析[J].信息安全與技術(shù),2014,(3):62-64.
[3]任淑美,李寧湘.Oracle數(shù)據(jù)庫備份與恢復(fù)技術(shù)探索[J].軟件導(dǎo)刊,2014,(8):119-121.
研究方向:信息技術(shù)、計算機(jī)技術(shù)
中圖分類號:G250.71
文獻(xiàn)標(biāo)識碼:A
文章編號:1671-8496-(2016)-02-0061-04
收稿日期:2016-03-11
作者簡介:邱俊強(qiáng)(1984-),男,助理館員,碩士
Probing into the Backup and Recovery of Interlib Library Management System Data
QIU Jun-qiang
(Guangdong Communication Polytechnic,Guangzhou 510650,China)
Abstract:On the basis of overviewing the characteristics of the Interlib cluster management of the library system,this paper studies the data backup and recovery scheme of Interlib system in terms of the data security and reliability in accordance with the library application server.
Key words:data backup;data recovery;interlib;oracle
廣東交通職業(yè)技術(shù)學(xué)院學(xué)報2016年2期