Referenciado por: Dicas Técnicas |
PostgreSQL
É necessário que seja pelo PSQL.
explain select [...];
Ele retorna o plano de ação do banco de dados. Nesse plano devemos evitar ao máximo a existência de leituras sequenciais seq scan.
Gravar Plano em Arquivo Texto
No PSQL é possível gravar o plano em arquivo texto. Pode-se utilizar o comando "\o <arquivo>" para criar arquivo.
Após isso todos os comandos rodados terão o resultado gravado no arquivo texto. Utilize "\o" para fechar arquivo, finalizando sua edição.
Veja exemplo abaixo.
\o 'c:/temp/plano.txt' explain select * from tt_ive where ven_dathor >= trunc(agora()); \o
Gerou o seguinte resultado dentro do arquivo:
QUERY PLAN
Index Scan using i_lc_ive_dathor on tt_ive (cost=0.01..4.28 rows=1 width=1126) Index Cond: (ven_dathor >= trunc((agora())::timestamp with time zone)) (2 rows)
Visualização Gráfica
O plano do PostgreSQL pode ser visualizado graficamente através do site http://explain.depesz.com/.
Oracle
Pode ser feito no DBExp. É feito em duas etapas.
1. Executar o plano.
explain plan for select [...]
2. Verificar resultado.
select * from table(dbms_xplan.display)
No Oracle é importante que não exista leituras full.