DBAtlas · Atlas für Datenbankbetrieb

Statistiken von pg_stat_statements zurücksetzen (alle oder eine einzelne Abfrage)

PostgreSQLPerformance

Befehl

-- Last reset time and number of entries evicted because the table was full (dealloc)
SELECT dealloc, stats_reset FROM pg_stat_statements_info;

-- Reset a single query only (userid, dbid, queryid; 0 = all)
SELECT pg_stat_statements_reset(0, 0, 5927525816675996975);

-- Reset all statistics
SELECT pg_stat_statements_reset();

Was es tut

Setzt die Zähler von pg_stat_statements vollständig oder je Benutzer/Datenbank/queryid zurück; pg_stat_statements_info zeigt die Zeit des letzten Resets und wie viele Einträge wegen Platzmangels verdrängt wurden.

Wann einsetzen

Um vor einer Tuning-Änderung (Index, Parameter, Deploy) eine saubere Messung zu beginnen oder den neuen Plan einer einzelnen Abfrage isoliert zu messen.

Vorsicht

Ein Reset lässt sich nicht rückgängig machen; Monitoring-/APM-Tools, die auf kumulierte Zähler setzen, zeigen eine Lücke, daher vorher einen Snapshot ziehen (siehe Rezept zu Planregressionen). Wächst dealloc ständig, ist pg_stat_statements.max zu klein (Änderung erfordert einen Neustart). Standardmäßig dürfen es nur Superuser ausführen; mit GRANT EXECUTE ON FUNCTION freigeben.

In DBAtlas öffnen →

Verwandte Einträge