1. 程式人生 > >Oracle EBS 鎖

Oracle EBS 鎖

這裡僅提供查詢鎖和解鎖。有時,鎖是正常的,所以殺掉正鎖著的程序有一定的風險性。
具體步驟如下:
-- 1.0 檢視 holder的程序
SELECT DECODE(request, 0, 'Holder: ', 'Waiter: ') || sid sess,
       id1,
       id2,
       lmode,
       request,
       type
  FROM V$LOCK
 WHERE (id1, id2, type) IN
       (SELECT id1, id2, type FROM V$LOCK WHERE request > 0)
 
ORDER BY id1, request; -- 2.0 看 lock的表 SELECT DOB.OBJECT_NAME, VSS.CLIENT_IDENTIFIER, LO.SESSION_ID || ',' || VSS.SERIAL#, LO.LOCKED_MODE, VSS.SERIAL#, VSS.ACTION, VSS.OSUSER, VSS.LOGON_TIME, VSS.PROCESS, VPS.SPID, VSS.* FROM V$LOCKED_OBJECT LO, DBA_OBJECTS DOB, V$SESSION VSS, V$PROCESS VPS
WHERE LO.OBJECT_ID = DOB.OBJECT_ID AND LO.SESSION_ID = VSS.SID AND VSS.PADDR = VPS.ADDR and VSS.SID = ; -- 值去 1.0 sess 欄位 holder: 後的數字 -- 3.0 檢視狀態 SID SERIAL select * from v$session where sid = ;-- 值去 1.0 sess 欄位 holder: 後的數字 -- 4.0 如果狀態是 INACTIVE 等,酌情kill ALTER SYSTEM KILL SESSION ' ,
';-- 分別取 3.0 SID SERIAL