Redefinir completamente o PostgreSQL para o padrão?

13

Pergunta

Existe uma maneira de redefinir completamente uma instalação do PostgreSQL no Linux, portanto, ela está no mesmo estado de quando eu a instalei?

Idéia

Eu considerei

rm -rf /var/lib/pgsql/*
rm -rf /var/lib/pgsql/backups/*
rm -rf /var/lib/pgsql/data/*

mas talvez não seja um método recomendado.

Finalidade

Isso seria útil para se livrar de sobras de programas anteriores que o usaram.

    
por Jasmine Lognnes 10.02.2014 / 15:42

3 respostas

3

Isso deve ser feito - apenas certifique-se primeiro de que a configuração atual realmente faz armazenar os arquivos nesses diretórios.

Uma vez feito, reinicie o banco de dados:

sudo -U pgsql initdb
    
por 10.02.2014 / 15:55
21

Tudo depende de como foi instalado.

Ubuntu, de pacotes (integrados ou apt.postgresql.org)

Use pg_wrapper . Veja os documentos do Ubuntu para o PostgreSQL . Você deseja pg_dropcluster de todos os clusters de Pg existentes e, em seguida, pg_createcluster de um novo limpo.

Não basta apagar o diretório de dados e re-initdb.

CentOS / RH / Fedora, pacotes integrados

Eu não tenho isso instalado e não posso testar facilmente agora. Da memória, acho que é seguro simplesmente parar o servidor e excluir o diretório de dados.

CentOS / RH / Fedora, pacotes yum.postgresql.org

Veja /usr/share/doc/postgresql??-?.?.?/README.rpm-dist .

Pare o servidor com systemctl ou o comando service wrapper, exclua o diretório de dados e execute /usr/pgsql-9.3/bin/postgresql93-setup initdb (ajustando caminhos conforme apropriado para sua versão).

Qualquer distro, do instalador do EDB

Pare o servidor, exclua o diretório de dados e initdb a um novo cluster. Veja os documentos do instalador.

Da fonte

Parar servidor, excluir dir de dados, re-initdb.

OS X

Homebrew: brew uninstall postgresql; brew cleanup; brew install postgresql

Postgres.app? Instalador EDB? MacPorts?

Encontre uma cerveja. Beba a cerveja. Repetir. Se isso não fizer a dor desaparecer, pegue algo mais strong.

Windows

  • Parar serviço
  • Excluir data dir
  • execute novamente o initdb usando runas.exe como o usuário postgres (pré-9.2) ou NETWORKSERVICE (9.2+). Ou apenas mude a propriedade depois.
por 11.02.2014 / 01:41
4

Não é melhor apenas remover e reinstalar?

Dessa forma, você obterá a versão mais recente e atualizará todas as dependências ao longo do caminho.

Executar: sudo apt-get --purge remove postgresql

Então: sudo apt-get install postgresql

    
por 10.02.2014 / 15:49