Ajustar o autovacuum para uma tabela específica
PostgreSQLManutençãoComando
ALTER TABLE customer SET (autovacuum_vacuum_scale_factor = 0.02, autovacuum_vacuum_threshold = 5000, autovacuum_analyze_scale_factor = 0.01);O que faz
Reduz os limites de disparo do autovacuum apenas para esta tabela, para que tabelas grandes/movimentadas passem por vacuum com mais frequência.
Quando usar
Quando o autovacuum fica para trás em tabelas grandes com muita atividade de UPDATE/DELETE.
Atenção
Configurações agressivas demais podem levar a execuções constantes do autovacuum e a carga de I/O. Para reverter a configuração: ALTER TABLE customer RESET (autovacuum_vacuum_scale_factor);
Relacionados
- VACUUM ANALYZE em uma tabela específica
- Executar um VACUUM FREEZE agressivo
- Reconstruir um índice sem bloqueio (REINDEX CONCURRENTLY)
- Aumentar o statistics target de uma coluna
- Acompanhar o progresso de operações autovacuum/VACUUM em execução
- Medir o risco de wraparound de transaction ID (idade de XID por banco e tabela)