Alô Marcos,

Eu já sigo 100% na linha que o Chiappa falou, há bastante tempo: levantar a 
necessidade (para escolher a melhor solução).

Portanto, acrescento somente na linha da busca da solução: se já tem pronta, 
não compensa rebuild. Usar "as is" já soluciona a maioria das necessidades. 
Além do quê, triggers podem ser desabilitadas ...
 
Sugestão:
- Versão Enterprise (10 e 11): AWR
- Versão Standard (10 e 11)..: Statspack
- Sem habilitar nada mais no BD (9, 10 e 11 tanto EE ou SE): Logminer

Neste link, vc vê um exemplo de como usar o Logminer com REDO, mas sabendo que 
vc pode habilitar também para ARCHIVE. Portanto, para a sua janela de pesquisa, 
basta ter o archive em disco, uma vez que o logminer "lê" os arquivos que já 
estão "externos" ao banco, nenhuma tabela vai "encher". É 100% garantido e vc 
pode buscar qualquer "kaca" feita pelo usuário, inclusive (se precisar) o 
Oracle já retorna o comando para "desfazer a kaca" na coluna REDO:
http://oracleflash.com/28/Oracle-11g-Using-LogMiner-to-analyze-redo-log-files.html


Ederson Elias
DBA Oracle
http://br.linkedin.com/pub/ederson-elias/24/8b/8b0


--- Em oracle_br@yahoogrupos.com.br, Marcos de Moura Gonçalves <mgmarcos@...> 
escreveu
>
> Olá Srs,
> 
> Me solicitaram a criação de uma trigger disparada por eventos DML que
> grave o SQL que ocasionou o disparo da trigger. Já tinha feito algo
> parecido no Oracle 10g, e lembrava que bastava fazer o join entre
> v$session e v$sql na coluna sql_id para encontrar o SQL realizado.
> Entretanto essa demanda é para um banco 11g, e pelo que reparei houve
> uma mudança  na informação gravada na v$session: ele guarda o sql_id
> do próprio SELECT realizado na v$session... Experimentei também a
> junção através da coluna prev_sql_id, mas me traz outro SQL que não o
> que disparou a trigger. Outra alternativa que tentei foi utilizar a
> função ORA_SQL_TXT, muito utilizada normalmente em exemplos de quem
> quer fazer auditoria de comandos DDL. Entretanto, pelo menos nas
> minhas tentativas em triggers de UPDATE, essa função não trouxe nada
> (li em algum forum que essa função estaria funcionando no 11g apenas
> para triggers de eventos de sistema, e não DML). Estou pesquisando
> alternativas ainda sem sucesso. Alguém tem alguma idéia?
> 
> Obrigado,
> 
> Marcos de Moura Gonçalves
>

Responder a