摘要:目的 通過升級(jí)來提高軍衛(wèi)一號(hào)信息系統(tǒng)的運(yùn)行效率,以適應(yīng)醫(yī)院醫(yī)療業(yè)務(wù)的發(fā)展。方法 通過在測(cè)試服務(wù)器上進(jìn)行操作系統(tǒng)和Oracle升級(jí)的模擬演練制定了詳細(xì)的升級(jí)方案。根據(jù)既定方案完成正式服務(wù)器上的升級(jí)。結(jié)果 該方法實(shí)現(xiàn)了操作系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)的成功升級(jí)。結(jié)論 操作系統(tǒng)與數(shù)據(jù)庫(kù)的升級(jí)極大地提高了信息系統(tǒng)處理事務(wù)的能力,達(dá)到了預(yù)期目標(biāo)。
關(guān)鍵詞:軍衛(wèi)一號(hào);信息系統(tǒng);數(shù)據(jù)庫(kù)升級(jí)
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武警北京總隊(duì)醫(yī)院是一所中型綜合性醫(yī)院。近年來,隨著醫(yī)院各項(xiàng)業(yè)務(wù)的不斷發(fā)展,我院已跨入三甲醫(yī)院的行列。隨之而來的科室醫(yī)療業(yè)務(wù)擴(kuò)大和收治的急速增加導(dǎo)致了信息系統(tǒng)客戶端數(shù)量成倍的增長(zhǎng),而服務(wù)器所能連接的客戶端數(shù)量卻是有限的,從而使得數(shù)據(jù)庫(kù)響應(yīng)時(shí)間延遲。而面對(duì)急劇增加的數(shù)據(jù)量,軟件系統(tǒng)較低的性能和管理能力一方面造成部分硬件資源的浪費(fèi),另一方面也使得整個(gè)信息系統(tǒng)的安全穩(wěn)定面臨嚴(yán)峻的挑戰(zhàn)。在這種情形下,我們經(jīng)過反復(fù)測(cè)試論證制定了詳細(xì)的升級(jí)方案,在各科室的協(xié)同努力下,實(shí)現(xiàn)了了信息系統(tǒng)數(shù)據(jù)庫(kù)從Windows2003 Server Enterprise X32+Oracle 8.16 X32到Windows2003 Server R2 Enterprise X64 +Oracle 11.2.0.3.0 X64的升級(jí),突破了原來32位操作系統(tǒng)和Oracle 8.16管理使用內(nèi)存的瓶頸,使得服務(wù)器硬件得到充分利用,同時(shí)極大地提高了數(shù)據(jù)庫(kù)處理復(fù)雜事務(wù)的能力,為醫(yī)院的醫(yī)療業(yè)務(wù)的持續(xù)發(fā)展奠定了良好的基礎(chǔ)。
1模擬測(cè)試
1.1搭建模擬測(cè)試環(huán)境①準(zhǔn)備一臺(tái)支持64位操作系統(tǒng)的性能相對(duì)較高的測(cè)試服務(wù)器。由于受到經(jīng)費(fèi)影響,我們將原來存儲(chǔ)數(shù)據(jù)庫(kù)備份文件的服務(wù)器作為此次測(cè)試服務(wù)器,將數(shù)據(jù)庫(kù)備份文件存儲(chǔ)到集群中的一臺(tái)服務(wù)器的本地硬盤上。②在測(cè)試服務(wù)器上安裝操作系統(tǒng)Windows2003 Server R2 Enterprise X64和Oracle 11.2.0.3.0 X64。
1.2升級(jí)演練和測(cè)試
1.2.1在測(cè)試機(jī)上創(chuàng)建空數(shù)據(jù)庫(kù)安裝好Oracle 11.2.0.3.0 X64后,創(chuàng)建空數(shù)據(jù)庫(kù)。創(chuàng)建空數(shù)據(jù)庫(kù)時(shí)要注意以下幾點(diǎn):①空數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)名、SID以及字符集必須和原數(shù)據(jù)庫(kù)一致;②數(shù)據(jù)庫(kù)文件的存儲(chǔ)位置必須與原數(shù)據(jù)庫(kù)一致;③應(yīng)結(jié)合原來數(shù)據(jù)庫(kù)的使用情況適當(dāng)調(diào)整一些系統(tǒng)數(shù)據(jù)文件的大小,如:回滾表空間RBS中數(shù)據(jù)文件RBS01.DBF,SYSTEM表空間中數(shù)據(jù)文件SYSTEM01.DBF等等;④創(chuàng)建好數(shù)據(jù)庫(kù)后,以SYS用戶登錄數(shù)據(jù)庫(kù)并重啟數(shù)據(jù)庫(kù),查看服務(wù)文件,確保數(shù)據(jù)庫(kù)正常。
1.2.2創(chuàng)建表空間并導(dǎo)入DMP文件在創(chuàng)建表空間之前,要注意根據(jù)原數(shù)據(jù)庫(kù)表空間的使用情況,修改表空間創(chuàng)建腳本,適當(dāng)調(diào)整某些數(shù)據(jù)文件的大小,必要時(shí)須增加數(shù)據(jù)文件的數(shù)量。示例語(yǔ)句為:
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;
待所有表空間創(chuàng)建完畢,將從Oracle 8i中通過EXP導(dǎo)出的DMP文件導(dǎo)入到新數(shù)據(jù)庫(kù)中。語(yǔ)句樣例為:
IMP system/manager full=y file=Z:\\oracle\\oradata\\orcl buffer=50000000 log=Z:\\IMP1018.log。
在導(dǎo)入過程中會(huì)出現(xiàn)IMP錯(cuò)誤和某些腳本編譯錯(cuò)誤。這是由于已經(jīng)創(chuàng)建的數(shù)據(jù)庫(kù)中存在這些對(duì)象因而可以忽略IMP錯(cuò)誤。對(duì)于編譯錯(cuò)誤,待導(dǎo)入完畢后,調(diào)用d:\\app\\administrator\\product\\11.2.0\\dbhome_1\\admin\\utlrp.sql對(duì)所有未編譯的對(duì)象重新編譯即可。
Oracle 11g中用戶的缺省表空間和臨時(shí)表空間與8i都不一樣,因而在導(dǎo)出舊數(shù)據(jù)庫(kù)之前需要對(duì)所有用戶進(jìn)行修改,再進(jìn)行備份和導(dǎo)出數(shù)據(jù)庫(kù)。語(yǔ)句示例為:alter user HX default tablespace users temporary tablespace temp。
第三步,測(cè)試數(shù)據(jù)庫(kù)。配置好數(shù)據(jù)庫(kù)各項(xiàng)參數(shù)后,從各個(gè)模塊登錄數(shù)據(jù)庫(kù),逐個(gè)檢測(cè)各模塊的每個(gè)功能是否都能完全實(shí)現(xiàn)。確認(rèn)完全無誤后,利用測(cè)試軟件進(jìn)行連接壓力測(cè)試。我們的方法是將測(cè)試軟件連接到數(shù)據(jù)庫(kù)的連接數(shù)設(shè)置為1000個(gè),占用內(nèi)存大小約4.2G,在此情況下運(yùn)行各模塊,以及一些大型的SQL語(yǔ)句,測(cè)試數(shù)據(jù)庫(kù)響應(yīng)速度。
第四步,根據(jù)測(cè)試情況進(jìn)行數(shù)據(jù)庫(kù)性能調(diào)優(yōu)。需要調(diào)整的參數(shù)包括SGA,PGA,聯(lián)機(jī)重做日志文件的數(shù)量和大小以及與進(jìn)程和會(huì)話有關(guān)的初始化參數(shù)等等。
第五步,制定詳細(xì)合理的升級(jí)方案。整理好以上各個(gè)升級(jí)步驟和注意事項(xiàng),形成合理的升級(jí)方案,包括技術(shù)方案和組織協(xié)調(diào)各科室工作的全院協(xié)調(diào)方案。
2正式切換
2.1切換前準(zhǔn)備首先必須確定好切換時(shí)間,我院數(shù)據(jù)庫(kù)切換時(shí)間定在周六凌晨,這樣由于周六、日門診就診人數(shù)少,住院患者需處理的醫(yī)囑也相對(duì)較少,一旦出現(xiàn)意外,還有時(shí)間進(jìn)行處理。其次,由于數(shù)據(jù)庫(kù)在切換期間必須停止一切服務(wù),這將影響到急診、臨床科室、掛號(hào)、收費(fèi)和藥房的正常運(yùn)行,因此需預(yù)先制定好相應(yīng)的應(yīng)對(duì)措施,由機(jī)關(guān)相應(yīng)負(fù)責(zé)人組織協(xié)調(diào)好各部門工作。
2.2 切換步驟第一步,停止集群服務(wù),修改配置并重啟服務(wù)器,將系統(tǒng)改為一臺(tái)服務(wù)器帶一臺(tái)陣列,全院信息系統(tǒng)正常運(yùn)行。在空閑的服務(wù)器上安裝新的操作系統(tǒng)和數(shù)據(jù)庫(kù)管理軟件,并手工建立空數(shù)據(jù)庫(kù)。
第二步,待當(dāng)日后臺(tái)劃價(jià)和所有統(tǒng)計(jì)過程運(yùn)行結(jié)束后也即次日凌晨,停止監(jiān)聽服務(wù),備份數(shù)據(jù)庫(kù)并導(dǎo)出數(shù)據(jù)。將連接陣列的服務(wù)器進(jìn)行操作系統(tǒng)和數(shù)據(jù)庫(kù)管理軟件的升級(jí),并在本地和陣列上各建立一個(gè)空數(shù)據(jù)庫(kù)。按照制定好的升級(jí)技術(shù)方案將數(shù)據(jù)導(dǎo)入到陣列里。
第三步,根據(jù)模擬測(cè)試機(jī)上的調(diào)整方案進(jìn)行數(shù)據(jù)庫(kù)性能調(diào)優(yōu),其中SGA:
Total System Global Area5344731136 bytes
Fixed Size2264616 bytes
Variable Size3741319640 bytes
Database Buffers 1593835520 bytes
Redo Buffers7311360 bytes
約占內(nèi)存70%左右。
PGA:Sort_area_size65536 bytes
第四步,配置兩臺(tái)服務(wù)器中的listener.ora,tnsnames.ora和sqlnet.ora文件以及域和集群并重啟服務(wù)器。
第五步,在兩臺(tái)服務(wù)器上安裝Oracle 8i客戶端(因?yàn)镠IS的后臺(tái)劃價(jià)程序需Oracle 8i支持),后臺(tái)劃價(jià)程序以及病案服務(wù)。
第六步,對(duì)升級(jí)后的數(shù)據(jù)庫(kù)進(jìn)行備份。備份完畢后正式啟用。
3結(jié)論
3.1系統(tǒng)升級(jí)完成后,服務(wù)器CPU 利用率一般在3%以下, 最高峰到達(dá)5%,由于64位操作系統(tǒng)以及Oracle 11g對(duì)內(nèi)存的管理使用能力的提高,數(shù)據(jù)庫(kù)的命中率在99.9%以上,極大地縮短了客戶端的請(qǐng)求響應(yīng)時(shí)間,大幅度增加了數(shù)據(jù)庫(kù)的會(huì)話容量,這為我院新醫(yī)療大樓的投入使用奠定了良好的基礎(chǔ)。
3.2利用Oracle 11g 的新特性如:閃回?cái)?shù)據(jù)庫(kù)歸檔功能和審計(jì)功能幫助技術(shù)人員更加方便的維護(hù)數(shù)據(jù)庫(kù)。
3.3在硬件條件許可的情況下可利用Oracle 11g 的RMAN功能實(shí)現(xiàn)數(shù)據(jù)庫(kù)的在線備份,利用DATAGUARD功能實(shí)現(xiàn)數(shù)據(jù)庫(kù)異地容災(zāi),這些都為數(shù)據(jù)安全提供了更加有力的保障。
參考文獻(xiàn):
[1]滕永昌.Oracle 10g 數(shù)據(jù)庫(kù)系統(tǒng)原理[M].北京: 機(jī)械工業(yè)出版社,2006: 491- 509.
[2]劉志敏,張紀(jì)國(guó).軍字一號(hào)醫(yī)院信息系統(tǒng)數(shù)據(jù)庫(kù)升級(jí)的實(shí)現(xiàn)[J].醫(yī)療設(shè)備信息,2004,19(10):17-20.
[3]張帆, 張紅君, 劉聰.\"軍衛(wèi)一號(hào)\"Oracle 數(shù)據(jù)庫(kù)升級(jí)的實(shí)現(xiàn)[J].解放軍醫(yī)院管理雜志, 2007, 14( 7) : 522- 523.
[4]曹麗, 劉剛.醫(yī)院信息系統(tǒng)Oracle 數(shù)據(jù)庫(kù)升級(jí)解決方案[J]. 醫(yī)療設(shè)備信息, 2007, 22( 7) : 30- 31.
[5]梁昌明,袁功智,秦占偉,等. Oracle 數(shù)據(jù)庫(kù)升級(jí)或遷移的方法探討[J]. 醫(yī)療衛(wèi)生裝備,2008,29(1):35-37.編輯/哈濤