ORACLE小技巧-解决死锁
最近用TOAD或者PL/SQL连接ORACLE老是有问题,连上了的,时间长了后,TOAD或者PL/SQL就死了,也不知道是什么原因。
那天由于这个问题就引发了我把数据库的某个表锁了。后来请教了一下DBA,参考网上这个帖子:
http://blog.youkuaiyun.com/depositpei/archive/2009/04/28/4131471.aspx
删除了死锁就好了。这里也记录一下,以后备用。
用DBA的权限登录上去
查询出死锁:
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;
查出SERIAL
SELECT SID,SERIAL#,PADDR FROM V$SESSION WHERE SID='刚才查到的SID'
杀会话
alter system kill session 'sid,serial#';
最近用TOAD或者PL/SQL连接ORACLE老是有问题,连上了的,时间长了后,TOAD或者PL/SQL就死了,也不知道是什么原因。
那天由于这个问题就引发了我把数据库的某个表锁了。后来请教了一下DBA,参考网上这个帖子:
http://blog.youkuaiyun.com/depositpei/archive/2009/04/28/4131471.aspx
删除了死锁就好了。这里也记录一下,以后备用。
用DBA的权限登录上去
查询出死锁:
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;
查出SERIAL
SELECT SID,SERIAL#,PADDR FROM V$SESSION WHERE SID='刚才查到的SID'
杀会话
alter system kill session 'sid,serial#';