Como descobrir o que foi feito no banco durante um determinado período.

Bom dia meu amigos.

É muito comum, especialmente quando algum problema acontece, que o DBA se veja na obrigação de fazer relatórios de tudo que aconteceu no banco em um determinado período do passado, caso você não queira gerar aquele relatórios imensos do AWR, e queira ir diretamente em algum usuário,maquina,seção,objeto, instancia ou comando especifico, poderá usar alguns dos scripts que criei e disponibilizei logo abaixo, que, certamente vão salvar nossa pele nesses momentos.

QUERYS “ASH” UTEIS PARA DESCOBRIR AÇÕES FEITAS NO BANCO DURANTE UM DETERMINADO PERÍODO

select c.command_type,b.username,c.sql_text,a.* 
from DBA_HIST_ACTIVE_SESS_HISTORY a, dba_users b,DBA_HIST_SQLTEXT c
where sample_time between to_date(’11/08/2011 12:30′, ‘dd/mm/yyyy hh24:mi’) 
         and  to_date(’11/08/2011 23:59′, ‘dd/mm/yyyy hh24:mi’)
and a.user_id = b.user_id
and b.username=’OPERBKP’
and a.sql_id=c.sql_id
and command_type=47
order by a.session_id, a.sample_time desc

————————————————————————————-

select  p1.object_name ||’ ‘|| p1.procedure_name || ‘ ‘ ||
        p2.object_name ||’ ‘|| p2.procedure_name          “calling_code”,
        s.sql_id,
        substr(st.sql_text,1,500) sqltext 
from    GV$ACTIVE_SESSION_HISTORY s,
        dba_procedures p1,
        dba_procedures p2,
        GV$sql st 
where   s.plsql_entry_object_id   = p1.object_id     (+)
and  s.plsql_entry_subprogram_id  = p1.subprogram_id (+)
and  s.plsql_object_id         = p2.object_id     (+)
and  s.plsql_subprogram_id     = p2.subprogram_id (+)
and  s.sql_id        = st.sql_id        (+) 
and  s.SESSION_ID    = 2155
–AND  s.sql_id     =  ‘7k954ba91zsxb’
–and s.inst_id    = 1

———————————————-      

select * from GV$ACTIVE_SESSION_HISTORY where  session_id=2155

———————————————- 

select * from GV$ACTIVE_SESSION_HISTORY where sample_time like to_date(’11/08/2011′, ‘dd/mm/yyyy’);

———————————————-      

select * from V$ACTIVE_SESSION_HISTORY where sample_time = to_date(’11/08/2011′, ‘dd/mm/yyyy’);

———————————————-      

select  * from DBA_session_HIST

———————————————-      

select  * from DBA_HIST_SQLTEXT where sql_id =  ‘crg6vcxmkjubu’ ;

—————————————————————————————

select * from gV$sql   where sql_id=  ‘crg6vcxmkjubu’  

———————————————-      

select distinct to_char(sample_time, ‘dd/mm/yyyy’) from GV$ACTIVE_SESSION_HISTORY 

———————————————-      

select distinct to_char(sample_time, ‘dd/mm/yyyy’) from V$ACTIVE_SESSION_HISTORY 

———————————————-        

Sobre Alexandre Pires

ORACLE OCS Goldengate Specialist, OCE RAC 10g R2, OCP 12C, 11g, 10g , 9i e 8i - Mais de 25 anos de experiência na área de TI. Participei de projetos na G&P alocado na TOK STOK, EDINFOR alocado na TV CIDADE "NET", 3CON Alocado no PÃO DE AÇUCAR, DISCOVER alocado na VIVO, BANCO IBI e TIVIT, SPC BRASIL, UOLDIVEO alocado no CARREFOUR e atualmente na ORACLE ACS atendendo os seguintes projetos: VIVO, CLARO, TIM, CIELO, CAIXA SEGUROS, MAPFRE, PORTO SEGURO, SULAMERICA, BRADESCO SEGUROS, BANCO BRADESCO, BASA, SANTANDER, CNJ, TSE, ELETROPAULO, EDP, SKY, NATURA, ODEBRESHT, NISSEI, SICREDI, CELEPAR, TAM, TIVIT, IBM, SMILES, CELEPAR, SERPRO,OKI,BANCO PAN, etc
Esse post foi publicado em AUDITORIA, AWR, PLSQL SCRIPTS, PLSQL TUNING, TUTORIAL e marcado , , , , , , , , , , , , , , , , , , , . Guardar link permanente.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s