91日韩精品视频-91日韩视频在线观看-91日韩天堂一区二区二区-91日日夜夜人人精-91日亚欧国产内射成人网-91三级在线日韩精品片

【醫(yī)院信息系統(tǒng)典型故障案例解析】數(shù)據(jù)庫性能優(yōu)化后的悲喜交加

發(fā)布時(shí)間:2019-10-29
瀏覽次數(shù):

《醫(yī)院信息系統(tǒng)典型故障案例解析》一書收集整理了53個醫(yī)院信息安全典型案例,內(nèi)容涉及基礎(chǔ)設(shè)施、網(wǎng)絡(luò)設(shè)備、主機(jī)應(yīng)用系統(tǒng)、數(shù)據(jù)庫、安全設(shè)備、虛擬化等各個方面。該書在CHIMA 2019大會發(fā)布后即受到醫(yī)療信息化同仁的一致好評。現(xiàn)CHIMA加印了第二版,同時(shí)在公眾號發(fā)布數(shù)期典型案例,為大家分享信息安全事故經(jīng)驗(yàn),避免事故重現(xiàn),共建醫(yī)院信息安全網(wǎng)絡(luò)。


【案例概述】


案例關(guān)鍵詞:Oracle;數(shù)據(jù)庫;性能優(yōu)化;Bug


更快的速度、更高的的性能不僅對臨床用戶,對運(yùn)維人員也是一件喜事。即便如此,有時(shí)也會在數(shù)據(jù)庫中觸發(fā)一些讓人意想不到的“坑”。下面簡單介紹一個因?yàn)樾阅軆?yōu)化后觸發(fā)的Oracle數(shù)據(jù)庫的Bug導(dǎo)致業(yè)務(wù)故障的案例。


【案例還原】


某醫(yī)院資深維護(hù)人員小L最近算是“悲喜交加”,喜的是,某個重要系統(tǒng)剛換了服務(wù)器、存儲等硬件設(shè)備,整個系統(tǒng)性能有了極大提升;悲的是,該系統(tǒng)自從更換過設(shè)備后,每天一到業(yè)務(wù)高峰期,業(yè)務(wù)科室就報(bào)障無法操作或是要等待一段時(shí)間才能操作。小L甚是不解,在一次報(bào)障中,小L仔細(xì)檢查完主機(jī)操作系統(tǒng)及存儲后確認(rèn)兩方面均無問題,之后便開始深入檢查了數(shù)據(jù)庫。


通過語句[select * fromv$session_wait where event not like ‘%message%’]發(fā)現(xiàn)event 等待事件中有許多enqueue等待事件,通過該視圖,繼續(xù)深入查詢sid為1310的enqueue等待事件。


通過語句[select sid,prev_hash_value from v$session where sid = 1310]查詢得到該sid的事件等待的上一條語句的hash_value為“2687139145”;


繼續(xù)查詢v$sqltext,通過語句[select * from v$sqltext where hash_value = '2687139145' order by piece]得到sid為1310的等待事件,等待的是上一條語句[delete SF_HZBR00 whereHZQSRQ<to_char(sysdate,'YYYYMMDD')]。


通過對所有enqueue等待事件的查詢得知,數(shù)據(jù)庫中的enqueue事件都是在等待上述delete語句的執(zhí)行。


問題現(xiàn)象已經(jīng)很清晰了,因?yàn)閐elete的操作,導(dǎo)致表SF_HZBR00的排他鎖而導(dǎo)致其它業(yè)務(wù)等待。小L查到問題所在,并通過腳本把數(shù)據(jù)庫中所有的hold和wait殺掉后(具體語句如下),業(yè)務(wù)恢復(fù)正常。

SELECT'kill -9 '||p.spid

FROMv$session s,v$process p

WHERE  s.paddr=p.addr

ands.sid in(

SELECTsid FROM V$LOCK

WHERE(id1, id2, type) in

(SELECTid1, id2, type FROM V$LOCK WHERE request>0))


但是到了第二天,問題又重復(fù)出現(xiàn),查詢后仍舊是表SF_HZBR00的delete操作在作祟。


那為什么在高峰時(shí)間會頻繁執(zhí)行delete操作?誰在執(zhí)行?為什么要執(zhí)行?


帶著這些問題,小L咨詢了業(yè)務(wù)同事小W,小W一眼就看出,該delete語句是數(shù)據(jù)庫中某個job的問題,該job每天定期跑一個存儲過程SP_HT_LSSJQL,該存儲過程就每天都在跑這條delete語句,主要是每天定期清理候診病人隊(duì)列數(shù)據(jù)。


那問題又來了,既然是job,每天定期執(zhí)行,為什么之前沒有問題,升級系統(tǒng)后就出問題了?


查詢數(shù)據(jù)庫日志后發(fā)現(xiàn),之前沒有出問題是因?yàn)樵瓉頇C(jī)器性能所限,該job根本沒有執(zhí)行成功過,表SF_HZBR00積攢了好幾年的候診病人隊(duì)列無用數(shù)據(jù)。而自從換了設(shè)備后,系統(tǒng)性能大為改觀,job可以正常跑,但是因?yàn)閿?shù)據(jù)量過大,所以導(dǎo)致在業(yè)務(wù)高峰時(shí)期表數(shù)據(jù)仍未清理完畢,而之前的處理手段是直接kill進(jìn)程(job超時(shí),數(shù)據(jù)庫會將其停掉),所以刪除表數(shù)據(jù)的工作被回滾,導(dǎo)致表數(shù)據(jù)未清理成功過。


原以為性能提高后問題會減少,沒想到性能提高后觸發(fā)了數(shù)據(jù)庫一個長期存在的“隱憂”。原來“坑”一直都在,只是之前沒有踩中而已。


后來,小L把存儲過程SP_HT_LSSJQL中的該條delete語句注釋掉,問題得以解決且未再出現(xiàn)。后續(xù),小L通過手工方式逐步把表SF_HZBR00的數(shù)據(jù)進(jìn)行清理,并撤銷對SP_HT_LSSJQL的delete語句的注釋,從根本上解決了問題。


【案例總結(jié)】


1、要定期關(guān)注數(shù)據(jù)庫日志,關(guān)注數(shù)據(jù)庫定期執(zhí)行job的執(zhí)行情況,尤其是對一些表或數(shù)據(jù)的處理是否執(zhí)行成功,如果未成功,雖然短時(shí)間可能不會影響業(yè)務(wù)系統(tǒng),但是長期可能會導(dǎo)致性能瓶頸。


2、數(shù)據(jù)庫鎖及鎖等待,為盡快恢復(fù)業(yè)務(wù)系統(tǒng),應(yīng)急處理可以統(tǒng)一kill掉,但是從根本上來說,為防止鎖及鎖等待的出現(xiàn),應(yīng)深入分析鎖產(chǎn)生的機(jī)制與原因,優(yōu)化相關(guān)SQL語句,從根源上解決問題。


3、DBA和熟悉業(yè)務(wù)的工程師應(yīng)該共同處理數(shù)據(jù)庫邏輯問題,這樣可起到事半功倍的效果。


本文選自《醫(yī)院信息系統(tǒng)典型故障案例解析》

主    編  傅昊陽

副主編  馬麗明  賀嘉嘉  高峰



近期活動推薦:醫(yī)院數(shù)據(jù)安全和數(shù)據(jù)治理論壇



點(diǎn)擊以下圖片可直接購買:《醫(yī)院信息系統(tǒng)典型故障案例解析》



點(diǎn)擊以下圖片可直接購買:《醫(yī)院網(wǎng)絡(luò)安全等級保護(hù)(2.0)實(shí)施指南》


更多醫(yī)療信息相關(guān)書籍請點(diǎn)擊查看



主站蜘蛛池模板: 古装国产一级视频在线| 亚洲精品久久7777777| 亚洲自拍愉拍| 亚洲国产私拍精品模在线| 四虎精品成人影院在线观看| 日韩a级一片| 精品无码人妻夜人多侵犯18| 国产九色在线| 国产中文字幕乱人伦在线 | www在线观看| 少妇人妻偷人精品无码v| 在线a视频免费观看| 无限观看韩国动漫免费观看大全| 欧美激情a∨在线视频播放| 国产真实乱系列| 成人无码a区在线观看视频| 欧美日韩激情黄色大片| 亚洲国产日韩在线观看18| 亚洲制服丝袜无码| 天美影视传媒app| 久久精品国产99国产精品亚洲| 亚洲免费永久精品| 精品日本亚洲网站| 亚洲av无码国产一区二区三区不卡| 中日韩乱码卡一卡2卡3卡4| 亚洲aⅴ男人的天堂在线观| 免费人成视频| 国产成人免费av片在线观看婷婷| 成人毛片免费在线观看| 亚洲av无码精品色午夜果冻不卡| 亚洲精品偷拍的自拍的| 欧美高清性xxxxxxx| 国产精品美女久久久久久| 国产成人精品自产拍在线观看| 少妇精品久久久一区二区三区| 亚洲天堂一级av免费毛片| 日日夜夜精品视频天天7799动漫| 国产一级在线观看视频| 亚洲制服师生无码成人免费不卡hd亚洲 | 午夜视频一区二区三区| 亚洲日韩v无码中文字幕|