当前位置: 移动技术网 > IT编程>数据库>Oracle > ORACLE 查询被锁住的对象,并结束其会话的方法

ORACLE 查询被锁住的对象,并结束其会话的方法

2017年12月12日  | 移动技术网IT编程  | 我要评论

千山暮雪吻戏,物流企业,福建租车

使用oracle时,发现有表被锁,又不知道是谁(或者哪个程序)锁的,怎么办 ?

两步走:

1、查找出被锁对象的会话id和序列号

执行如下sql:

-- 查询出被锁对象,并提供 kill 脚本
select s.sid, s.machine, o.object_name, l.oracle_username, l.locked_mode, s.osusesr,
 'alter system kill session '''|| s.sid || ', '|| s.serial#||''';' as kill_command
 from v$locked_object l, v$session s, all_objects o
 where l.session_id=s.sid and l.object_id=o.object_id

2、kill

复制出第1步查询结果中的 kill_command 字段值,执行。

-- kill 的基本语法

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

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网