vacuumdb [opção_de_conexão...] [--full | -f] [--verbose | -v] [--analyze | -z] [--table | -t tabela [( coluna [,...] )] ] [nome_do_banco_de_dados]
vacuumdb [opções_de_conexão...] [--all | -a] [--full | -f] [--verbose | -v] [--analyze | -z]
O vacuumdb é um utilitário para limpar um banco de dados do PostgreSQL. O vacuumdb também gera as estatísticas internas usadas pelo otimizador de comandos do PostgreSQL.
O vacuumdb é um invólucro em torno do comando VACUUM do SQL. Não existe diferença efetiva entre limpar o banco de dados através deste utilitário ou através de outros métodos para acessar o servidor.
O vacuumdb aceita os seguintes argumentos de linha de comando:
Limpa todos bancos de dados.
Especifica o nome do banco de dados a ser limpo ou analisado. Se não for especificado o nome do banco de dados, nem for utilizada a opção -a (ou --all), o nome do banco de dados será obtido da variável de ambiente PGDATABASE. Se esta variável não estiver definida, então será utilizado o nome do usuário especificado na conexão.
Mostra os comandos que o vacuumdb gera e envia para o servidor.
Executa a limpeza "completa".
Não exibe resposta.
Limpa ou analisa somente a tabela. Os nomes das colunas só podem ser especificados junto com a opção --analyze.
Dica: Se forem especificadas as colunas, provavelmente será necessário fazer o escape (\) dos parênteses para o interpretador de linha de comando (Veja exemplos abaixo).
Mostra informações detalhadas durante o processamento.
Calcula as estatísticas a serem utilizadas pelo otimizador.
O vacuumdb também aceita os seguintes argumentos de linha de comando para os parâmetros de conexão:
Especifica o nome de hospedeiro da máquina onde o servidor está executando. Se o nome iniciar por barra (/), será utilizado como o diretório do soquete do domínio Unix.
Especifica a porta TCP, ou a extensão do arquivo de soquete do domínio Unix local, onde o servidor está atendendo as conexões.
Nome do usuário para conectar.
Força a solicitação da senha.
Havendo dificuldade, veja no comando VACUUM e no psql a discussão dos problemas possíveis e as mensagens de erro. O servidor de banco de dados deve estar executando no hospedeiro de destino. Também se aplicam todas as definições de conexão padrão e as variáveis de ambiente utilizadas pela biblioteca cliente libpq.
O vacuumdb pode precisar conectar várias vezes ao servidor PostgreSQL, solicitando a senha cada uma destas vezes. Neste caso é conveniente existir o arquivo ~/.pgpass. Para obter mais informações deve ser consultada a Seção 27.12.
Para limpar o banco de dados teste:
$ vacuumdb teste
Para limpar e analisar para o otimizador o banco de dados chamado grande_bd:
$ vacuumdb --analyze grande_bd
Para limpar uma única tabela chamada foo, no banco de dados chamado xyzzy, e analisar para o otimizador uma única coluna desta tabela chamada bar:
$ vacuumdb --analyze --verbose --table 'foo(bar)' xyzzy