关于oracle死锁

来源:互联网 发布:mac 进入mac系统 编辑:程序博客网 时间:2024/05/27 06:55

 如果仅仅是lock,以下语句可以发现所有用户锁  :

 

SELECT s.username,
       decode(l.type, 'TM', 'TABLE LOCK', 'TX', 'ROW LOCK', NULL) LOCK_LEVEL,
       o.owner,
       o.object_name,
       o.object_type,
       s.sid,
       s.serial#,
       s.terminal,
       s.machine,
       s.program,
       s.osuser
  FROM v$session s, v$lock l, all_objects o
 WHERE l.sid = s.sid
   AND l.id1 = o.object_id(+)
   AND s.username is NOT Null

 

如果有锁等待或死锁,可以通过以下语句发现:

 

select lpad('   ', decode(l.xidusn, 0, 3, 0)) || l.oracle_username User_name,
       o.owner,
       o.object_name,
       o.object_type
  from v$locked_object l, dba_objects o
 where l.object_id = o.object_id
 order by o.object_id desc

 

原创粉丝点击