Oracle检查锁及其等待的行ROWID

Posted 一剑,一伞,一逍遥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle检查锁及其等待的行ROWID相关的知识,希望对你有一定的参考价值。

SELECT l.session_id sid ,
       substr(o.owner,
              1,
              8) owner,
       o.object_type object_type,
       substr(o.object_name,
              1,
              18) object_name,
       decode(l.locked_mode,
              0,
              ‘None‘,
              1,
              ‘Null‘,
              2,
              ‘Row-S‘,
              3,
              ‘Row-X‘,
              4,
              ‘Share‘,
              5,
              ‘S/Row-X‘,
              6,
              ‘Exclusive‘) locked_mode,
       l.oracle_username username,
       l.os_user_name osuser,
       to_char(s.logon_time,
               ‘YYYY/MM/DD HH24:MI:SS‘) logon_time,
       decode(s.row_wait_obj#,
              - 1,
              NULL,
              dbms_rowid.rowid_create( 1,
                                      s.row_wait_obj#,
                                      s.row_wait_file#,
                                      s.row_wait_block#,
                                      s.row_wait_row#)) row_id
  FROM gv$locked_object l, --gv$locked_object
       all_objects     o,
       gv$session       s --gv$session
 WHERE l.object_id = o.object_id
   AND l.session_id = s.sid
--AND l.inst_id = s.inst_id
-- AND o.object_name = ‘LOCK_TEST‘;
 
 

--杀死session及进程

SELECT s.sid session_id,
       p.spid os_process_id,
       p.pid oracle_process_id,
       ‘alter system kill session ‘‘‘ || to_char(s.sid) || ‘,‘ || to_char(s.serial#) || ‘‘‘ immediate;‘ kill_db_session,
       ‘kill -9 ‘ || p.spid kill_os_session
  FROM v$process p,
       v$session s
 WHERE p.addr = s.paddr
   AND s.sid = &sid;


















































以上是关于Oracle检查锁及其等待的行ROWID的主要内容,如果未能解决你的问题,请参考以下文章

锁Oracle死锁(DeadLock)的分类及其模拟

如何快速查出 oracle 数据库中的锁等待

MySQL巡检查看参数

oracle锁表与等待

oracle大量的行级锁对数据库整体性能有影响吗?

oracle行级锁和表级锁的区别?