oracle的死锁处理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lzc1993lzc/article/details/83055840
-- 查看死锁sql
select sql_text from v$sql where hash_value in 
(select sql_hash_value from v$session where sid in
(select session_id from v$locked_object))

--查找死锁
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;

--杀掉死锁(基本够用):alter system kill session ‘sid,serial#’; (其中sid=l.SESSION_ID)
alter system kill session '131,241';
alter system kill session '144,726';


-- 终极杀掉死锁,上面步骤失败的情况下使用:
-- 其中sid用死锁的sid替换: exit
-- ps -ef|grep spid
--  其中spid是这个进程的进程号,kill掉这个Oracle进程
select pro.spid from v$session ses,v$process pro where ses.sid=XX and ses.paddr=pro.addr;

猜你喜欢

转载自blog.csdn.net/lzc1993lzc/article/details/83055840