Acompanhar consultas feitas no oracle

Como Ver as Consultas Realizadas no Oracle

1. Visões V$SQL e V$SQLAREA

Essas visões fornecem informações sobre as consultas SQL em execução ou que foram executadas recentemente no banco de dados. Exemplos de consultas:

  • Consultas recentes:

    SELECT sql_text
    FROM v$sql
    WHERE last_active_time > SYSDATE - INTERVAL '1' HOUR;
    
  • Consultas agrupadas por tipo e executadas:

    SELECT sql_text, executions, elapsed_time
    FROM v$sqlarea
    WHERE executions > 0
    ORDER BY elapsed_time DESC;
    

2. Auditoria de Consultas com AUDIT

Você pode habilitar a auditoria de consultas no Oracle para registrar ações como SELECT, INSERT, UPDATE, DELETE, etc. Exemplo:

  • Auditar consultas SELECT em uma tabela específica:

    AUDIT SELECT ON nome_da_tabela BY ACCESS;
    
  • Consultar a auditoria de consultas:

    SELECT *
    FROM dba_audit_trail
    WHERE action_name = 'SELECT';
    

3. Monitoramento com DBMS_MONITOR

O pacote DBMS_MONITOR pode ser usado para monitorar consultas de uma sessão específica. Exemplos:

  • Habilitar monitoramento para uma sessão:

    EXEC DBMS_MONITOR.session_trace_enable(session_id => your_session_id);
    
  • Desabilitar monitoramento:

    EXEC DBMS_MONITOR.session_trace_disable(session_id => your_session_id);
    

4. Visão V$SESSION para Sessões Ativas

Você pode visualizar as sessões ativas e as consultas executadas atualmente no banco de dados:

SELECT s.sid, s.serial#, s.username, q.sql_text
FROM v$session s
JOIN v$sql q ON s.sql_id = q.sql_id
WHERE s.status = 'ACTIVE';

5. Histórico de Consultas com V$SQL

Para visualizar consultas já executadas, você pode consultar o histórico usando a visão V$SQL:

SELECT *
FROM v$sql
WHERE parsing_schema_name = 'USUARIO'
AND last_active_time > SYSDATE - INTERVAL '1' DAY;

6. Oracle Enterprise Manager

Se você estiver usando o Oracle Enterprise Manager (OEM), pode monitorar as consultas ativas e o histórico de execuções por meio de sua interface gráfica.


Essas são algumas formas de ver as consultas realizadas no Oracle. Com esses métodos, você pode monitorar as consultas em tempo real ou acessar o histórico delas.

Você achou esse artigo útil?