Oracle 如何查看被锁的对象

记住这句查询即可:

SELECT substr(v$lock.sid, 1, 4) "SID",
       substr(username, 1, 12) "UserName",
       substr(object_name, 1, 25) "ObjectName",
       v$lock.type "LockType",
       decode(rtrim(substr(lmode, 1, 4)),
              '2',
              'Row-S (SS)',
              '3',
              'Row-X (SX)',
              '4',
              'Share',
              '5',
              'S/Row-X (SSX)',
              '6',
              'Exclusive',
              'Other') "LockMode",
       substr(v$session.program, 1, 25) "ProgramName"
  FROM V$LOCK, SYS.DBA_OBJECTS, V$SESSION
 WHERE (OBJECT_ID = v$lock.id1 AND v$lock.sid = v$session.sid AND
       username IS NOT NULL AND username NOT IN ('SYS', 'SYSTEM') AND
       SERIAL# != 1);

posted on 2012-04-17 20:27  清茶居士  阅读(470)  评论(0编辑  收藏  举报

导航