程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> ORACLE-013:oracle中kill死鎖進程

ORACLE-013:oracle中kill死鎖進程

編輯:Oracle教程

ORACLE-013:oracle中kill死鎖進程


oracle中對於訪問頻率很高的包,存儲過程或者函數,會引起死鎖。對於用到了死鎖的對象的腳本都會無法運行,造成卡死,或者報異常:打開的連接太多。

這時需要使用dba權限賬戶去kill掉死鎖的對象。

使用

 alter system kill session 死鎖對象的ID;

執行如下sql,查找出死鎖的ID,並將alter語句拼接好:

select Distinct 'alter system kill session '||chr(39)||b.sid||','||b.serial#||chr(39)||';'As  kill對象sql語句,
b.username,b.logon_time
from v$locked_object a,v$session b
where a.session_id=b.sid
order by b.logon_time;
然後將拼接的語句拿出來執行即可。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved