PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Temps d'exécution de la requête Postgres

Utilisez \timing comme expliqué par "Comment puis-je chronométrer les requêtes SQL à l'aide de psql ?" .

Voir aussi le manuel de psql .

Si vous voulez côté serveur les temps d'exécution qui n'incluent pas le temps de transfert du résultat au client, vous pouvez définir log_min_duration_statement = 0 dans la configuration, puis SET client_min_messages = log afin que vous obteniez les informations de journal dans la console.

Vous pouvez également utiliser EXPLAIN ANALYZE pour obtenir des délais d'exécution détaillés. Il y a une surcharge de temps pour cela, sauf si vous utilisez EXPLAIN (ANALYZE TRUE, TIMING FALSE) , qui n'existe que dans les versions plus récentes, et désactive le minutage détaillé pour ne donner qu'un temps d'exécution global à la place.

PgBadger , en particulier lorsqu'il est combiné avec le auto_explain modules , peut fournir des statistiques agrégées utiles à partir de l'analyse des journaux.

Enfin, il y a pg_stat_statements , qui peut collecter des informations agrégées pratiques sur le système en cours d'exécution.