ORACLE鎖表查詢及解鎖方法


--查看鎖表情況
select distinct a.sid,
                to_char(a.logon_time, 'YYYY-MM-DD HH24:mi:ss') loginTime,
                a.serial#,
                a.USERNAME,
                a.OSUSER,
                a.MACHINE,
                a.STATUS,
                d.sql_text,
                'ALTER SYSTEM KILL SESSION ''' || a.sid || ',' || a.SERIAL# || ',@' ||
                a.inst_id || ''';'
  from gv$session a, gv$locked_object b, dba_objects c, gv$sqlarea d
where a.SID = b.SESSION_ID
   and username = 'CCIC_UAT_RI'
   and d.address = a.sql_address
   and a.status = 'ACTIVE'
   and b.OBJECT_ID = c.object_id;
   
--查看具體是那些sql語句引起鎖表   
select l.session_id sid,
       s.serial#,
       l.locked_mode,
       l.oracle_username,
       s.user#,
       l.os_user_name,
       s.machine,
       s.terminal,
       a.sql_text,
       a.action
  from v$sqlarea a, v$session s, v$locked_object l
where l.session_id = s.sid
   and s.prev_sql_addr = a.address
order by sid, s.serial#;

--ORACLE解鎖的方法 
alter system kill session 'SID,serial#';  --SID和Serial#共同確定一唯一的session。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM