熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

工作中遇到的oracle故障分析和處理一例

2013-11-13 12:46:54  來源: Oracle 

  案例類別 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
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.