Leksykon IT › Bazy danych › Autovacuum

Autovacuum

Bazy danych Svenska → Zaktualizowano: 2026-10-05

Proces w tle PostgreSQL, który automatycznie uruchamia VACUUM i ANALYZE, gdy w tabeli nazbiera się dość martwych wierszy. Domyślnie włączony. Źle skonfigurowany autovacuum to jedna z najczęstszych pułapek wydajności Postgresa.

Wyzwalacz: proces rusza, gdy liczba martwych wierszy przekroczy autovacuum_vacuum_threshold + scale_factor × rozmiar tabeli. Domyślny scale_factor (0,2 = 20%) bywa zbyt leniwy dla dużych tabel — puchną one znacznie, zanim vacuum ruszy. Strojenie: obniżyć scale_factor dla gorących tabel, zwiększyć liczbę workerów i podnieść autovacuum_vacuum_cost_limit, by nadążał. Objawy problemów: rosnący bloat, ostrzeżenia o „wraparound”, nagłe spadki wydajności. Antywzorzec: wyłączanie autovacuum „dla wydajności” — prędzej czy później kończy się katastrofą. Warto monitorować last_autovacuum w pg_stat_user_tables.

← Wróć do leksykonu