Rechercher des locks

A jouer en SYSDBA, sinon remplacer OBJ$ et USER$ par SYS.OBJ$ et SYS.USER$.

SELECT  /*+ rule */
    DECODE(L.REQUEST,0,'NO','YES') WAIT
    , S.OSUSER
    , S.PROCESS
    , S.USERNAME LOCKER
    , U.NAME T_OWNER
    , O.NAME OBJECT_NAME
    , '  '||S.PROGRAM PROGRAM
    , S.SID||','||S.Serial#
FROM
    V$LOCK L,
    V$SESSION S,
    OBJ$ O,
    USER$ U
WHERE
          U.USER# = O.OWNER#
AND    S.SID = L.SID
AND    L.ID1 = O.OBJ#
AND    L.TYPE = 'TM'
UNION
SELECT
    DECODE(L.REQUEST,0,'NO','YES') WAIT
    , S.OSUSER
    , S.PROCESS
    , S.USERNAME LOCKER
    , '-'
    , 'Record(s)'
    , '  '||S.PROGRAM PROGRAM
    , S.SID||','||S.Serial#
FROM
    V$LOCK L,
    V$SESSION S
WHERE
         S.SID = L.SID
AND    L.TYPE = 'TX'
ORDER BY 7,5,1,2,6

Laisser un commentaire