Oracle删除死锁

这两天用Eclipse测试代码,在Debug模式下更新完数据还没Commit就直接在Eclipse里把程序停了。之后发现程序启不动了,总是停在数据更新的地方。自己想了想觉得是死锁的可能性最大,于是关了Eclipse,发现还是没有解锁。在网上找了找,Oracle解除死锁的方法如下。

用DBA角色登入。用以下SQL执行自己想要的操作

查看锁信息

SQL
select b.owner, b.object_name, l.session_id, l.locked_mode
  from v$locked_object l, dba_objects b
 where b.object_id = l.object_id

查看锁ID

SQL
select t2.username,t2.sid,t2.serial#,t2.logon_time
  from v$locked_object t1,v$session t2
 where t1.session_id=t2.sid order by t2.logon_time

删除锁(SQL中的sid请换成查看锁ID步骤里的结果)

SQL
alter system kill session 'sid,serial#';

转载请注明:宇托的狗窝 » Oracle删除死锁

发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址