Autovacuum do PostgreSQL

Publicado por Caio Ferreira Dias em 08/02/2011

[ Hits: 22.017 ]

 


Autovacuum do PostgreSQL



Pessoal, sou dba de uma empresa que usa PostgreSQL e temos várias conexões simultâneas, então vou compartilhar com vocês uma dica que uso aqui referente ao autovacuum do Postgres, onde estava me gerando dor de cabeça.

Primeiramente desabilite o autovacuum no postgresql.conf colocando autovacuum = off. Depois crie um script do para fazer o vacuum full.

# nano vacuum.sh

Coloque o seguinte conteúdo.

#!/bin/bash
su - postgres -c "/usr/bin/vacuumdb --d banco --full --analyze -U postgres

Salve e mude o arquivo para executável:

# chmod +x vacuum.sh

Edite o contrab para agendar o horário que será executado:

# nano /etc/crontab

Colocando a linha:

00 22 * * * root /local-script/vacuum_pg.sh

Salve! Pronto, todos os dias irá realizar o vacuum completo às 22:00.

Outras dicas deste autor

Script Reindex PostgreSQL com envio de email de notificação

Resolvendo waiting ou idle transaction no PostgreSQL

Verificar triggers desabilitadas no PostgreSQL

Ubuntu 11.04 - Placa wireless parou de funcionar com o kernel 2.6.39.x?

Leitura recomendada

Exportando dados do PostgreSQL para HTML

Dicas e macetes sobre modelagem de bancos de dados

PostgreSQL no Fedora 18

SQL: Filtragem com WHERE sem problemas com maiúsculo ou minúsculo

Acesso externo no PostgreSQL 8.4

  

Comentários
[1] Comentário enviado por hgporto em 14/08/2014 - 13:36h

Caio, boa dica!
Só faltou fechar aspas (") no comando do script.
;)
Abs!

[2] Comentário enviado por BacamarteLinux em 07/07/2015 - 20:21h

Em bases grandes isso vacuum full é inviável...



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts