Ultimas Ações executadas

DBA Geral (instalação, configuração do banco, scripts do Sql*Plus, shell scripts, batch scripts, etc...)
Responder
facc
Rank: Analista Pleno
Rank: Analista Pleno
Mensagens: 104
Registrado em: Qua, 27 Mai 2009 2:37 pm
Localização: Cerquilho / SP

Informações do Ambiente:
* Versão do Oracle: 10g
* Sistema Operacional: AIX (Unix)

Queria saber se tem como eu descobrir quais foram as ultimas execuções (Select, Insert, Update) em uma determinada tabela
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

Selecionar tudo

select sql_text,
       object_status,
       first_load_time,
       username,
       sid,
       lockwait,
       sql.LAST_ACTIVE_TIME
  from v$session ses, v$sql sql
 where ses.sql_id = sql.sql_id
você pode fazer um where do tipo

Selecionar tudo

sql_text like '%NOME_TABELA%'
facc
Rank: Analista Pleno
Rank: Analista Pleno
Mensagens: 104
Registrado em: Qua, 27 Mai 2009 2:37 pm
Localização: Cerquilho / SP

Mas isso funciona para qualquer dia?

Pois aconteceu o seguinte, por algum motivo essa tabela perdeu alguns dados e gostaria de saber se foi executado algum update ou delete nela na data de 30/08/2010
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

não..
isso é so para sessões abertas..


do jeito que você quer penso que so se o trace estivesse ligado daria certo fora isso não sei como te ajudar
facc
Rank: Analista Pleno
Rank: Analista Pleno
Mensagens: 104
Registrado em: Qua, 27 Mai 2009 2:37 pm
Localização: Cerquilho / SP

E como descubro se o trace está ligado?
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

vê se te ajuda
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante