本篇內容主要講解“Oracle死鎖監(jiān)控和解決方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Oracle死鎖監(jiān)控和解決方法”吧! 本篇內容主要講解“Oracle死鎖監(jiān)控和解決方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Oracle死鎖監(jiān)控和解決方法”吧! 創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站建設、網(wǎng)站重做改版、泰寧網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5高端網(wǎng)站建設、商城建設、集團公司官網(wǎng)建設、成都外貿網(wǎng)站制作、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為泰寧等各大城市提供網(wǎng)站開發(fā)制作服務。 1、 發(fā)現(xiàn)鎖對象和對應的 SID// 發(fā)現(xiàn)鎖定 SELECT s.username, l.OBJECT_ID, l.SESSION_ID, s.SERIAL#, l.ORACLE_USERNAME, l.OS_USER_NAME, l.PROCESS FROM V$LOCKED_OBJECT l,V$SESSION S WHERE l.SESSION_ID=S.SID; 2、 解決方法——kill掉指定的 session alter system kill session ‘sid,serial#’; (其中sid=l.session_id ) kill掉session,也可以在EM 中進行,使用圖形化界面。 3、 解決方法——kill掉指定的 process 通過sid找到對應service進程的id信息,通過操作系統(tǒng)級別進行kill 。 select pro.spid from v$session ses,v$process pro where ses.sid=XX and ses.paddr=pro.addr; 其中sid用死鎖的sid 替換。 exit ps -ef|grep spid 其中spid是這個進程的進程號,kill掉這個Oracle 進程。 在OS層面kill進程的情況很多,比如使用dbms_job調用的session,大部分時候都需要在OS層面kill 掉。 Oracle 死鎖與應用設計 一般情況下,應用程序對數(shù)據(jù)庫的操作基本上是瞬時的(除非需要Tunning )。只有涉及到批量事務操作的時候,才會出現(xiàn)長時間對一個對象的獨占。一旦這種情況出現(xiàn),所獨占的對象又是為其他會話(批量操作)所請求,就有可能出現(xiàn)死鎖。 長時間的批量事務一般都組織在系統(tǒng)專門的作業(yè)管理器中,根據(jù)特定的調度規(guī)則進行運行。為了提高效率,作業(yè)管理器通常使用多線程技術,同時多個線程執(zhí)行多個任務,這種情況下,出現(xiàn)死鎖的概率也有大大提升。在這個問題上,筆者有如下想法: 1、 按照模塊劃分線程,模塊內作業(yè)順序執(zhí)行,模塊間并行。一般來說,一個模塊的作業(yè)之間,會出現(xiàn)比較嚴重的資源請求共享,比如對同一個表中同一批數(shù)據(jù)的操作。這樣很容易出現(xiàn)死鎖狀態(tài)。無論是手工解鎖、還是借助Oracle 自身機制解鎖,都至少引起一個作業(yè)的回滾。所以,根據(jù)模塊進行劃分,相同模塊的作業(yè)盡可能順序執(zhí)行,減少表數(shù)據(jù)之間共用。不同模塊之間的作業(yè),操作更新的表范圍差別比較大,所以不同業(yè)務模塊之間作業(yè)進行并行。2、 作業(yè)中顯示進行錯誤00060的處理。在作業(yè)的開發(fā)中,要加入對于00060 死鎖錯誤的處理,如果接受到了該錯誤異常,要主動從應用層面進行操作回滾,接觸其他作業(yè)阻塞情況。3、 借助Oracle自身鎖機制,監(jiān)控長時間鎖住對象和會話狀況,盡快通知DBA 手工解決死鎖。 綜上所述:死鎖在Oracle 中是一種比較少見的情況,而且自身有相應的監(jiān)控防護機制。作為應用開發(fā)者的我們,也要盡可能的合理化應用處理結構,盡可能不要顯示的鎖定對象和設計不合理的并行操作,加大出現(xiàn)死鎖的概率。
分享文章:Oracle死鎖監(jiān)控和解決方法
URL標題:http://www.chinadenli.net/article32/cegsc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、全網(wǎng)營銷推廣、域名注冊、搜索引擎優(yōu)化、標簽優(yōu)化、網(wǎng)站內鏈
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)