码迷,mamicode.com
首页 > 数据库 > 详细

ORACLE查询数据库的锁表情况

时间:2014-07-05 22:20:54      阅读:308      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   使用   数据   os   

 

查询数据库的锁表情况语句如下:

SELECT p.spid,a.serial#, c.object_name,b.session_id,b.oracle_username,b.os_user_name
     FROM v$process p,v$session a, v$locked_object b,all_objects c
    WHERE p.addr=a.paddr 
      AND a.process=b.process 
      AND c.object_id=b.object_id

如果表因为某些情况出现死锁,可以使用ORACLE管理员权限账户登录到数据库,根据上面查出来的 session_id和serial#列的值,Kill指定会话,释放锁,语句如下:

ALTER SYSTEM KILL SESSION sid, serial#

有些情况下,仍无法释放表,此时可以考虑从操作系统(以Linux系统为例)角度,根据上面查出来的spid进程号,将对应进程Kill掉,语句如下:

Kill -9 SPID

ORACLE查询数据库的锁表情况,布布扣,bubuko.com

ORACLE查询数据库的锁表情况

标签:style   blog   color   使用   数据   os   

原文地址:http://www.cnblogs.com/jsllgjk/p/3826079.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!