趙凱 袁立華 山東省萊蕪市人民醫院,271100
醫院信息系統Oracle數據庫的備份方法
趙凱 袁立華 山東省萊蕪市人民醫院,271100
數據庫備份方案的好壞,可以有效提高數據庫管理的安全性和可靠性。根據筆者所在醫院信息系統選用網絡架構和數據庫的實際情況,以Oralce數據庫為例,在分析系統數據備份實際需求的基礎上,探討了各種數據備份策略。
醫院信息系統;Oracle;數據庫;備份
筆者所在醫院由總院、骨科醫院、傳染病醫院三個院區和市中社區服務中心組成,醫院信息系統(HIS)包括門診醫生工作站、住院醫生工作站、護士工作站、醫學影像系統(PACS)、檢驗信息系統(LIS)、藥局管理系統、門診住院收費管理系統、病案信息管理系統、手術麻醉管理系統、醫療統計系統、院長綜合查詢與輔助決策系統、電子病歷系統(EMR)、移動查房系統、設備器械后勤物資管理系統、社區衛生服務、體檢信息系統、醫療保險接入系統、學術論文期刊查詢系統等40余個系統應用。各院區分別由光纖接入總院服務器,實現三院區醫院信息系統無縫聯接。
1.1 系統環境及配置
網絡總體結構為主干千兆,百兆到桌面,采用IBM服務器,另有備份服務器,服務器端使用網絡操作系統Windows 2003,數據庫為Oracle 10g;客戶端使用Windows XP 操作系統,采用Power Builder 9為前臺工具。
1.2 數據庫備份的意義
醫院信息系統在日常工作中積累的數據,如果因為沒有保護好而遭到破壞和丟失,將會給醫院和病人帶來無法彌補的損失,同時也會給醫院帶來不良的社會影響。當由于計算機網絡系統故障,(如機器故障、介質故障、系統故障、進程故障等)影響數據庫系統的操作,影響數據庫中數據的正確性,嚴重時甚至會使數據庫中全部或部分數據丟失,特別是在醫院信息系統中,對數據庫要求7*24小時無故障運行,一旦發生上述故障時,需要能夠在盡可能短的時間內,盡可能完全地恢復系統運行,數據庫的恢復必須基于數據庫有一個完善的備份,并且經常性備份也有利于服務器的軟、硬件升級。
2.1 備份策略
根據筆者所在醫院信息系統的特點,選擇合適的備份周期、備份介質和備份方法,以確保為數據庫提供一個完整的全備份。對Oracle數據庫的備份,采用冷備份和熱備份以及邏輯備份(Export/Import)相結合的方法。
2.2 Oracle數據庫三種備份方案的比較
2.2.1 冷備份(脫機備份)
冷備份發生在數據庫正常關閉的情況下,當正常關閉時會提供給我們一個完整的數據庫,然后使用操作系統備份工具或第三方工具備份所有相關的Oracle文件,這些文件包括①Oracle可執行代碼/代碼、配置文件和控制文件;②Oralce數據文件或聯機重做日志文件。特別要注意不在一個物理盤上的多個數據文件、多個控制文件和多個聯機日志文件。通常利用IMMEDIATE選項關閉數據庫,備份工作完成后,再以正常方式啟動Oracle。優點是備份簡單、迅速,恢復時間較短;缺點是必須關閉數據庫,不能進行點恢復。
2.2.2 熱備份(聯機備份)
熱備份可在數據庫打開的情況下進行,此時數據庫必須運行在可歸檔日志模式,否則Oracle將產生錯誤并禁止使用聯機備份過程。一般情況下,Oralce的LGWR后臺進程以一種循環方式寫入redo日志文件,從第一個redo日志到下一個,直到該組的最后一個,然后再重寫第一個redo日志,因此在非歸檔模式下不能使用熱備份。在可歸檔日志模式,ARCH后臺進程在每一個redo日志被覆蓋前,就讀取全部redo日志,然后將其寫到歸檔日志(也就是給它做 一個拷貝),熊掌,這些文件被寫入硬盤或磁帶中,建議使用硬盤,這樣可大大減少完成備份所需的時間。其備份過程包含以下步驟①進行表空間的聯機備份;②備份歸檔重做日志;③備份控制文件。優點是備份時不必關閉數據庫,可以進行點恢復;缺點是執行過程復雜,測試困難,同時熱備份可能造成CPU、I/O過載,應在數據庫不太忙時進行。
2.2.3 邏輯備份(Export/Import)
邏輯備份是使用軟件技術從數據庫中提到數據,并將結果寫入一個稱為“導出轉儲文件”的系統文件內,可以使用專用工具軟件(Import)將該文件恢復到數據庫中。它有三種模式:①完全導出模式:導出數據庫中所有對象;②用戶模式:導出用戶所有對象以及對象中的數據;③表模式:導出用戶所有表或者指定的表。該備份有三種類型:①完全型(complete export):備份整個數據庫;②積累型(cumulative export):備份上一次完全或積累型備份所改變的數據;③增量型(increamental export):備份上一次備份后改變的數據。這種備份包括以下步驟:①數據庫運行時,利用Export實用工具導出數據(例如導出用戶或表);②把導出的文件拷貝到硬盤或磁帶上。邏輯備份的優點是能執行對象或實現恢復,能夠跨操作系統平臺遷移數據庫;缺點是當數據量大時,恢復的過程相當耗時。
2.3 備份介質
磁帶具有體積小、大容量、可長期保存等特性,是一種安全可靠、價格低廉的備份介質。為保證備份介質的安全,介質與服務器應異地并分開保存,對保存介質的環境溫度、濕度以及防磁措施有相應的要求,應嚴格遵守。可根據備份的內容、日期,將介質統一編號,以免備份和恢復時弄錯介質,造成原有備份丟失。
筆者所在醫院采用三種備份相結合的方法進行數據庫備份。每周日晚進行冷備份,關閉Oracle數據庫,執行轉儲,將所有相關的Oracle文件以及歸檔日志文件全部拷貝至備份服務器硬盤中,完畢后啟動數據庫,并將備份內容轉至磁帶,做好標記,妥善保存。每天則采用熱備份的策略備份歸檔重做日志文件,注意啟動數據庫時數據庫需要運行的模式。每兩個星期做一次指定重要用戶和表的導出,確認數據庫在邏輯上的正確性。
[1] (美)Kevin Loney,Bob Bryla;朱潔梅,王海濤譯.Oracle Database 10g DBA手冊——管理健壯的、可擴展的、高可用的Oracle數據庫[M].北京:清華大學出版社,2006
[2] (美)Kevin Loney;劉偉琴,張格仙譯. Oracle Database 11g完全參考手冊[M].北京:清華大學出版社,2010
[3] 曹原,范衛國,陳坤蕾.我院Oracle數據庫的備份與恢復[J].醫療衛生裝備,2011,32(9):55~56
10.3969/j.issn.1001-8972.2012.07.062
趙凱,女,本科學歷,程序員,山東省萊蕪市人民醫院,271100,山東省萊蕪市長勺北路雪湖大街001號;
袁立華,男,本科學歷,主治醫師,山東省萊蕪市人民醫院。