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: 94.268 ]

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

CruxPorts4Slack - O ports para Slackware

Configurando um servidor de FTP no OpenBSD

Bind com suporte a sdb/PostgreSQL

DropBear: um serviço de SSH alternativo

Leitura recomendada

PostgreSQL 9.4 - Replicação com slots

Unificando bases de dados com Schemas

Diagrama Entidade-Relacionamento com Dia e tedia2sql para o PostgreSQL

psql - Conheça o básico

Replicando banco de dados PostgreSQL

  
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