oracle表被鎖處理方法
最近遇到這樣乙個問題,操作乙個表,發現被人鎖定了,於是查詢誰鎖定的表,
發現多人鎖定,安全起見,不能全部kill,於是用一下語句判定,誰鎖定,誰等待。
www.2cto.com
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
www.2cto.com
// 查詢到的結果如下
如果發生了鎖等待,我們可能更想知道是誰鎖了表而引起誰的等待
以上的語句可以查詢到誰鎖了表,而誰在等待。
以上查詢結果是乙個樹狀結構,如果有子節點,則表示有等待發生。
如果想知道鎖用了哪個回滾段,還可以關聯到v$rollname,其中xidusn就是回滾段的usn
找出誰鎖定的記錄,kill掉就行了。
alter system kill session '133,3506' ;
Oracle表被鎖,解鎖方法
1.下面的語句用來查詢哪些物件被鎖 select object name,machine,s.sid,s.serial from v locked object l,dba objects o v session s where l.object id o.object id and l.sessi...
Oracle表被鎖解決方法
最近在工作中遇到了oracle資料庫表被鎖的情況,導致無法對錶進行修改,再這裡給大家分享一下解決方法,避免大家從踩坑 1 查詢鎖的session id mysql select session id from v locked object 例 3334 2 根據session id查詢鎖的會話資訊...
Oracle解鎖表被鎖
1.下面的語句用來查詢哪些物件被鎖 select object name,machine,s.sid,s.serial from v locked object l,dba objects o v session s where l.object id o.object id and l.sessi...