Oracle死锁的查看以及解决办法
1. 查询被锁定的表

select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id;
2.查询发生锁定表的会话及序列号

select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time;
3. 结束产生锁表的会话
--杀掉对应会话即解锁,
alter system kill session ‘sid,serial#’; (其中sid=l.session_id)
如果还不能解决:
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进程

浙公网安备 33010602011771号