案例類別 VAS網絡
系統類型 CMODE
系統版本 硬件SUN 軟件所有版本
案例標題 CMODE放號中的數據庫出現LOCK的處理方法
故障現象 啟動sam_cmode進程不能正常處理工單
故障描述 啟動以sam_cmode –d方式啟動發現sam_cmode始終在處理一個用戶
connected
c f e a e d d
a c f d
a d a
send: LOGIN:USERNAME=utbjPASSWORD=utbj
recv: LOGIN:RESULT=
connect cmode successful!
c a
d a
send DEL :
a connection break or timeout in recv
commu err when delete event
故障分析 在CMODE的數據庫中手動刪除該用戶記錄發現oracle無任何反饋信息
(正常情況下會出現oracle的完整性約束報錯ORA: integrity constraint (PDXDBAFK_TSIGNUP_USERID) violated child record found)
初步懷疑tcontract表中該用戶記錄被鎖定
通過查詢oracle的視圖發現目前有用戶正在update該用戶記錄且發現有很多update操作沒有commit
SQL> select aSERIAL#aSIDcSQL_TEXTaprogram from v$session av$locked_object bv$sqltext c where asid=bSESSION_ID and cSQL_TEXT like update tcontract set % and aprogram like sqlplus% order by asid;
update tcontract set lstatus=E where tel=
sqlplus@gz_signup (TNS VV)
故障處理 通過oracle命令將這些session殺死重啟sam_cmode和signup模塊
alter system kill session ;
日常維護 維護人員盡量不要手工修改CMODE數據庫中的數據
修改完畢確認正確後及時執行commit操作
From:http://tw.wingwit.com/Article/program/Oracle/201311/16572.html