Autovacuum do PostgreSQL

Publicado por Caio Ferreira Dias em 08/02/2011

[ Hits: 22.051 ]

 


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

Ubuntu 10.04 + Postgresql 8.4 + PgAdmin III- Instalação para iniciantes

Instalação do PostgreSQL no CoLinux-Debian

Lidando com nulos (NULL) em SQL

Tradução da documentação da PL/PHP para PostgreSQL

Exportando dados do PostgreSQL para HTML

  

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