ORACLE 如何查询被锁定表及如何解锁释放session

来源:互联网 发布:淘宝获取商品id 编辑:程序博客网 时间:2024/05/19 18:38

今天在清理数据库脏数据的时候遇到电脑死机(机器配置确实比较low,每天都要死机一两次闭嘴),无奈重启,再次启动数据库执行delete操作的时候,我的OB12卡死,换到PL/SQL依然如此,这时候我就觉得很有可能不是电脑的原因,而是因为之前突发的死机造成已经执行的操作并没有commit,再次打开OB12执行对被锁表的查询,sql如下:

1、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


查询结果显示果然是先前操作的表被锁定,找到原因就好办了,执行释放session语句,sql如下:

2、ALTER system kill session 'sid, serial#’;

sid和serial两个参数正是执行第一步时查询出来的数据



原创粉丝点击