当Oracle Session被锁死的时候

2015-01-21 12:31:10 · 作者: · 浏览: 2

--锁表查询SQL


SELECT object_name, machine, s.sid, s.serial#
FROM gv$locked_object l, dba_objects o, gv$session s
WHERE l.object_id = o.object_id
AND l.session_id = s.sid;


执行结果如下:


当Oracle Session被锁死的时候


可以看到这一条数据,也就是说,存在那么一个表被锁死了,这时候呢,我们也确认了,之前无法执行update的这张表确实是因为被锁死了所以无法完成更新操作.


如何释放呢?继续执行一条SQl 语句:


ALTER system kill session '601, 802';


当Oracle Session被锁死的时候


可以看到601 和802是查询到SID 和Serial ,格式为:alter system kill session 'sid, serial#'; 执行完成之后:


当Oracle Session被锁死的时候


没有了被锁死的session了,这时候再去执行我们的表更新操作,可以看到,更新已经没有问题了.