摘要:目的 通過升級來提高軍衛一號信息系統的運行效率,以適應醫院醫療業務的發展。方法 通過在測試服務器上進行操作系統和Oracle升級的模擬演練制定了詳細的升級方案。根據既定方案完成正式服務器上的升級。結果 該方法實現了操作系統和數據庫系統的成功升級。結論 操作系統與數據庫的升級極大地提高了信息系統處理事務的能力,達到了預期目標。
關鍵詞:軍衛一號;信息系統;數據庫升級
Achievement of No.1 Military Medical Project Information System Database Upgrade
YOU Hai-hong1,LUAN Wan-na2,LIU Shuo-ming1,QU Qi1
(1.Department of Information,CAPF Hospital, Beijing 100027,China;2. Information Technology and High-tech Research Staff Room of SPC, Beijing 102211,China)
Abstract:ObjectiveTo enhance the operation efficiency ofNo.1 Medical Project information system by upgrade to adapt to the development of the hospital medical business. MethodsBy means of the simulation exercises of operating system and oracle system upgrade on the test server making the upgrade program in detail and according to the established program to complete the upgrade on the formal server. ResultsThe operating system and database upgrade has been achieved successfully by this method. ConclusionOperating system and database upgrade improved the ability to handle affairs of the information system greatly and achieved the expected goal.
Key words:No.1 Military Medical Project;Information system; Database upgrade武警北京總隊醫院是一所中型綜合性醫院。近年來,隨著醫院各項業務的不斷發展,我院已跨入三甲醫院的行列。隨之而來的科室醫療業務擴大和收治的急速增加導致了信息系統客戶端數量成倍的增長,而服務器所能連接的客戶端數量卻是有限的,從而使得數據庫響應時間延遲。而面對急劇增加的數據量,軟件系統較低的性能和管理能力一方面造成部分硬件資源的浪費,另一方面也使得整個信息系統的安全穩定面臨嚴峻的挑戰。在這種情形下,我們經過反復測試論證制定了詳細的升級方案,在各科室的協同努力下,實現了了信息系統數據庫從Windows2003 Server Enterprise X32+Oracle 8.16 X32到Windows2003 Server R2 Enterprise X64 +Oracle 11.2.0.3.0 X64的升級,突破了原來32位操作系統和Oracle 8.16管理使用內存的瓶頸,使得服務器硬件得到充分利用,同時極大地提高了數據庫處理復雜事務的能力,為醫院的醫療業務的持續發展奠定了良好的基礎。
1模擬測試
1.1搭建模擬測試環境①準備一臺支持64位操作系統的性能相對較高的測試服務器。由于受到經費影響,我們將原來存儲數據庫備份文件的服務器作為此次測試服務器,將數據庫備份文件存儲到集群中的一臺服務器的本地硬盤上。②在測試服務器上安裝操作系統Windows2003 Server R2 Enterprise X64和Oracle 11.2.0.3.0 X64。
1.2升級演練和測試
1.2.1在測試機上創建空數據庫安裝好Oracle 11.2.0.3.0 X64后,創建空數據庫。創建空數據庫時要注意以下幾點:①空數據庫的數據庫名、SID以及字符集必須和原數據庫一致;②數據庫文件的存儲位置必須與原數據庫一致;③應結合原來數據庫的使用情況適當調整一些系統數據文件的大小,如:回滾表空間RBS中數據文件RBS01.DBF,SYSTEM表空間中數據文件SYSTEM01.DBF等等;④創建好數據庫后,以SYS用戶登錄數據庫并重啟數據庫,查看服務文件,確保數據庫正常。
1.2.2創建表空間并導入DMP文件在創建表空間之前,要注意根據原數據庫表空間的使用情況,修改表空間創建腳本,適當調整某些數據文件的大小,必要時須增加數據文件的數量。示例語句為:
create tablespace tsp_inpbill datafile
'z:\\oracle\\oradata\\orcl\\apinpbill01.dbf' size 4096m,
'z:\\oracle\\oradata\\orcl\\apinpbill02.dbf' size 512m
autoextend on next 512m maxsize unlimited
logging
online
permanent
extent management local segment space managementauto;
待所有表空間創建完畢,將從Oracle 8i中通過EXP導出的DMP文件導入到新數據庫中。語句樣例為:
IMP system/manager full=y file=Z:\\oracle\\oradata\\orcl buffer=50000000 log=Z:\\IMP1018.log。
在導入過程中會出現IMP錯誤和某些腳本編譯錯誤。這是由于已經創建的數據庫中存在這些對象因而可以忽略IMP錯誤。對于編譯錯誤,待導入完畢后,調用d:\\app\\administrator\\product\\11.2.0\\dbhome_1\\admin\\utlrp.sql對所有未編譯的對象重新編譯即可。
Oracle 11g中用戶的缺省表空間和臨時表空間與8i都不一樣,因而在導出舊數據庫之前需要對所有用戶進行修改,再進行備份和導出數據庫。語句示例為:alter user HX default tablespace users temporary tablespace temp。
第三步,測試數據庫。配置好數據庫各項參數后,從各個模塊登錄數據庫,逐個檢測各模塊的每個功能是否都能完全實現。確認完全無誤后,利用測試軟件進行連接壓力測試。我們的方法是將測試軟件連接到數據庫的連接數設置為1000個,占用內存大小約4.2G,在此情況下運行各模塊,以及一些大型的SQL語句,測試數據庫響應速度。
第四步,根據測試情況進行數據庫性能調優。需要調整的參數包括SGA,PGA,聯機重做日志文件的數量和大小以及與進程和會話有關的初始化參數等等。
第五步,制定詳細合理的升級方案。整理好以上各個升級步驟和注意事項,形成合理的升級方案,包括技術方案和組織協調各科室工作的全院協調方案。
2正式切換
2.1切換前準備首先必須確定好切換時間,我院數據庫切換時間定在周六凌晨,這樣由于周六、日門診就診人數少,住院患者需處理的醫囑也相對較少,一旦出現意外,還有時間進行處理。其次,由于數據庫在切換期間必須停止一切服務,這將影響到急診、臨床科室、掛號、收費和藥房的正常運行,因此需預先制定好相應的應對措施,由機關相應負責人組織協調好各部門工作。
2.2 切換步驟第一步,停止集群服務,修改配置并重啟服務器,將系統改為一臺服務器帶一臺陣列,全院信息系統正常運行。在空閑的服務器上安裝新的操作系統和數據庫管理軟件,并手工建立空數據庫。
第二步,待當日后臺劃價和所有統計過程運行結束后也即次日凌晨,停止監聽服務,備份數據庫并導出數據。將連接陣列的服務器進行操作系統和數據庫管理軟件的升級,并在本地和陣列上各建立一個空數據庫。按照制定好的升級技術方案將數據導入到陣列里。
第三步,根據模擬測試機上的調整方案進行數據庫性能調優,其中SGA:
Total System Global Area5344731136 bytes
Fixed Size2264616 bytes
Variable Size3741319640 bytes
Database Buffers 1593835520 bytes
Redo Buffers7311360 bytes
約占內存70%左右。
PGA:Sort_area_size65536 bytes
第四步,配置兩臺服務器中的listener.ora,tnsnames.ora和sqlnet.ora文件以及域和集群并重啟服務器。
第五步,在兩臺服務器上安裝Oracle 8i客戶端(因為HIS的后臺劃價程序需Oracle 8i支持),后臺劃價程序以及病案服務。
第六步,對升級后的數據庫進行備份。備份完畢后正式啟用。
3結論
3.1系統升級完成后,服務器CPU 利用率一般在3%以下, 最高峰到達5%,由于64位操作系統以及Oracle 11g對內存的管理使用能力的提高,數據庫的命中率在99.9%以上,極大地縮短了客戶端的請求響應時間,大幅度增加了數據庫的會話容量,這為我院新醫療大樓的投入使用奠定了良好的基礎。
3.2利用Oracle 11g 的新特性如:閃回數據庫歸檔功能和審計功能幫助技術人員更加方便的維護數據庫。
3.3在硬件條件許可的情況下可利用Oracle 11g 的RMAN功能實現數據庫的在線備份,利用DATAGUARD功能實現數據庫異地容災,這些都為數據安全提供了更加有力的保障。
參考文獻:
[1]滕永昌.Oracle 10g 數據庫系統原理[M].北京: 機械工業出版社,2006: 491- 509.
[2]劉志敏,張紀國.軍字一號醫院信息系統數據庫升級的實現[J].醫療設備信息,2004,19(10):17-20.
[3]張帆, 張紅君, 劉聰.\"軍衛一號\"Oracle 數據庫升級的實現[J].解放軍醫院管理雜志, 2007, 14( 7) : 522- 523.
[4]曹麗, 劉剛.醫院信息系統Oracle 數據庫升級解決方案[J]. 醫療設備信息, 2007, 22( 7) : 30- 31.
[5]梁昌明,袁功智,秦占偉,等. Oracle 數據庫升級或遷移的方法探討[J]. 醫療衛生裝備,2008,29(1):35-37.編輯/哈濤