Pular para o conteúdo

Fóruns Banco de dados Oracle Consumo de undo Consumo de undo

#87526
Avatar photoRegis Araujo
Participante

    Fala amigo…

    Tenta este aqui…

    Criei ele ontem.. pois estava precisando…

    SELECT r.name "RB NAME", p.pid "ORACLE PID", p.spid "SYSTEM PID ",
    NVL (p.username, 'NO TRANSACTION') "OS USER", s.UserName, s.Status,
    S.MACHINE,D.SEGMENT_NAME, D.BYTES/1024/1024 "MB" , D.BLOCKS, D.EXTENTS,
    D.TABLESPACE_NAME
    FROM v$lock l,
    v$process p,
    v$rollname r,
    v$session s,
    dba_segments D
    WHERE l.sid = s.sid(+)
    AND s.paddr = p.addr
    AND TRUNC (l.id1(+)/65536) = r.usn
    AND l.type(+) = 'TX'
    AND l.lmode(+) = 6
    AND R.NAME = D.segment_name
    AND D.SEGMENT_TYPE in ('ROLLBACK','TYPE2 UNDO')
    ORDER BY r.NAME

    E este aqui ajuda tbm.. Vc verifica qual o tamanho dos dados EXPIRADOS e dos dados NÃO EXPIRADOS no UNDO…

    select 'EXPIRADO -> ' ||sum(bytes)/1024/1024 SITUACAO from dba_undo_extents
    where status = 'EXPIRED'
    UNION
    select 'NÃO EXPIRADO -> ' ||sum(bytes)/1024/1024 SITUACAO from dba_undo_extents
    where status = 'UNEXPIRED'

    Abraços…