Oracle中查看锁表情况的Sql语句


SELECT S.SID SESSION_ID, S.USERNAME, DECODE(LMODE,0,'None',1,'Null',2,'Row-S (SS)',
  3,'Row-X (SX)',4,'Share',5,'S/Row-X (SSX)',6,'Exclusive',TO_CHAR(LMODE)) MODE_HELD,
  DECODE(REQUEST,0,'None',1,'Null',2,'Row-S (SS)',3,'Row-X (SX)',4,'Share',5,'S/Row-X (SSX)',6,
  'Exclusive',TO_CHAR(REQUEST)) MODE_REQUESTED, O.OWNER||'.'||O.OBJECT_NAME||'('||O.OBJECT_TYPE||')',
  S.TYPE LOCK_TYPE, L.ID1 LOCK_ID1, L.ID2 LOCK_ID2
FROM  V$LOCK L, SYS.DBA_OBJECTS O, V$SESSION S
WHERE  L.SID  =  S.SID  AND   L.ID1  =  O. OBJECT_ID;


执行上记SQL语句,可以查寻到数据库中的锁的情报.

SESSION_ID, USERNAME,  MODE_HELD,  MODE_REQUESTED, OBJECT_NAME, LOCK_TYPE, LOCK_ID

分别是 拥有锁的SESSION_ID,拥有锁的USERNAME,锁的执行模式MODE_HELD,锁的请求MODE_REQUESTED,锁所在的数据库对象名
,锁的类型,锁的ID

原文出处:
http://bbs.chinaunix.net/viewthread.php?tid=29004

你可能感兴趣的:(oracle,sql,数据库,session,object,null)