Vacuum - otimizando sua base de dados PostgreSQL

Vacuum libera espaço em disco utilizado pelos registros deletados de uma base de dados do PostgreSQL, que teoricamente não são mais necessários. Nesse artigo veremos em detalhes como utilizar essa excelente ferramenta.

[ Hits: 107.024 ]

Por: Vagner Rodrigues Fernandes em 06/01/2005 | Blog: https://takedownsec.com.br/


Introdução



Durante uma operação normal do PostgreSQL, os registros que são deletados ou atualizados não são fisicamente removidos das tabelas, permanecendo presentes até a execução de um comando chamado vacuum.

Assim é necessário realizar vacuum periodicamente, especialmente em tabelas freqüentemente usadas.

Quando vacuum estiver sem parâmetro, ele irá processar cada tabela do banco de dados, mas quando existe algum parâmetro no vacuum somente a tabela é processada.

Vacuum analyze


Executa um vacuum e depois um analyze para cada tabela selecionada. Esta é uma forma de combinação para manutenção rotineira de scripts, veja ANALYZE para mais informações a respeito do processamento.

Somente vacuum, simplesmente reivindica espaço e o torna disponível para a reutilização.

Utilizando o Vacuum Analyze:

$ VACUUM ANALYZE tabela;

Se você quiser ver o status, utilize o parâmetro VERBOSE:

$ VACUUM ANALYZE VERBOSE tabela;

Vacuum full


Realiza um processamento mais extensivo, inclusive movendo as tuplas através de blocos, para tentar compactar a tabela ao número mínimo de blocos. Esta forma é muito lenta e exige um bloqueio exclusivo em cada tabela enquanto estiver sendo processada:

$ VACUUM FULL;

Se você quiser ver o status, utilize o paramento VERBOSE:

$ VACUUM FULL VERBOSE;

    Próxima página

Páginas do artigo
   1. Introdução
   2. Vacuum no shell
   3. Gerando logs do vacuum
   4. Observações
Outros artigos deste autor

LFTP - Sophisticated File Transfer Program

Bind com suporte a sdb/PostgreSQL

tMSNc - MSN modo texto

Burlando "MSN Sniffers" com TOR e Gaim

Configurando um servidor de FTP no OpenBSD

Leitura recomendada

PostgreSQL: comandos básicos

Como migrar banco de dados MySQL para PostgreSQL

Como agendar um backup automático do PostgreSQL no Cron evitando o problema de senha

Checklist de performance do PostgreSQL 8.0

Instalando PostgreSQL 8.1 com extensão para dados espaciais (PostGis) e interface de gerenciamento (PgAdmin3)

  
Comentários
[1] Comentário enviado por paulopewera em 15/10/2012 - 11:01h

Estou tentando criar um script de Backup mas quando eu executo ele me pede a senha para o banco, como posso resolver?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts