PostgreSQL pg_stat_user_tables: проверить autovacuum

Категория: Postgresql · Язык: SQL · Обновлено:

Представление pg_stat_user_tables показывает статистику обслуживания пользовательских таблиц: примерное число живых и мёртвых строк, время последнего autovacuum и количество запусков. Запрос помогает заметить таблицы, где накопились dead tuples или давно не проходила очистка. Сверяйте показатели с реальной нагрузкой и настройками autovacuum.

Рабочий пример

SQL
SELECT relname,
       n_live_tup,
       n_dead_tup,
       last_autovacuum,
       autovacuum_count
FROM pg_stat_user_tables
ORDER BY n_dead_tup DESC
LIMIT 10;

n_live_tup и n_dead_tup — оценки статистики, а не точный COUNT(*). Смотрите last_autovacuum и autovacuum_count вместе с размером таблицы и динамикой показателей.

Частый вопрос

Почему last_autovacuum равен NULL?

Для таблицы мог ещё не выполняться autovacuum или статистика могла быть сброшена. Проверьте настройки autovacuum, активность таблицы, права и состояние статистики.