oracle 檢視鎖 與 解鎖

2021-08-31 01:53:28 字數 1068 閱讀 7381

--------------解鎖

alter system kill session 'sid,serial';

--------------查詢鎖表使用者

select

sess.sid,

sess.serial#,

lo.oracle_username,

lo.os_user_name,

ao.object_name,

lo.locked_mode

from

v$locked_object lo,

dba_objects ao,

v$session sess

where

ao.object_id = lo.object_id

and

lo.session_id = sess.sid;

--是查詢誰鎖定的表,發現多鎖定,安全起見,不能全部kill,於是用一下語句判定,誰鎖定,誰等待。

select /*+ rule */ lpad(' ',decode(l.xidusn ,0,3,0))||l.oracle_username user_name,

o.owner,o.object_name,o.object_type,s.sid,s.serial#

from v$locked_object l,dba_objects o,v$session s

where l.object_id=o.object_id

and l.session_id=s.sid

order by o.object_id,xidusn desc

--如果發生了鎖等待,我們可能更想知道是誰鎖了表而引起誰的等待

--以上的語句可以查詢到誰鎖了表,而誰在等待。

--以上查詢結果是乙個樹狀結構,如果有子節點,則表示有等待發生。

--如果想知道鎖用了哪個回滾段,還可以關聯到v$rollname,其中xidusn就是回滾段usn

--找出誰鎖定的記錄,kill掉就行了。

oracle 檢視鎖表,與解鎖

select t2.username,t2.sid,t2.serial t3.object name t2.osuser,t2.machine,t2.program,t2.logon time,t2.command,t2.lockwait,t2.saddr,t2.paddr,t2.taddr,t2....

oracle 檢視鎖表,解鎖

racle 鎖表查詢 和 解鎖 2009年08月25日 星期二 08 19 p.m.最近遇到這樣乙個問題,操作乙個表,發現被人鎖定了,於是查詢誰鎖定的表,發現多人鎖定,安全起見,不能全部kill,於是用一下語句判定,誰鎖定,誰等待。sql 查詢誰鎖定,誰等待 select rule lpad dec...

oracle 檢視鎖表和解鎖

檢視鎖表select l.session id sid,s.serial l.locked mode,l.oracle username,l.os user name,s.machine,s.terminal,o.object name,s.logon time from v locked obje...