Qual é a maneira recomendada de executar uma pequena atualização do PostgreSQL, por exemplo, 9.3.0 para 9.3.1 usando o instalador do Windows, construído no Enterprise DB? Devo desinstalar primeiro ou apenas instalar sobre a instalação existente?
A instalação atual foi realizada com o postgresql-9.3.0-1-windows-x64.exe. Agora eu quero atualizar usando o postgresql-9.3.1-1-windows-x64.exe.
postgresql
installation
upgrade
postgresql-9.3
buzz3791
fonte
fonte
e.g. ...
peça.Respostas:
No Windows, basta interromper o serviço postgresql e executar o postgresql-9.3.1-1-windows-x64.exe sobre as obras 9.3.0 existentes. Não é necessário desinstalar. Obviamente, um backup é recomendado.
Documentação clara e explícita para o procedimento de atualização no Windows está ausente. Observe que o link da documentação fornecido pelo @dezso foi movido no manual atual para: https://www.postgresql.org/docs/current/static/upgrading.html
As notas de versão do PostgreSQL normalmente documentam dicas de migração no Apêndice E. Por exemplo,
A melhor fonte de informações do instalador do Windows foram os fóruns do Enterprise DB. Aqui estão algumas postagens que eu achei que abordavam a questão ...
Observe que as informações de atualização se movem de uma versão para outra. Por exemplo,
Observe que em junho de 2017, o EnterpriseDB substituiu seus fóruns de discussão da comunidade que afetavam os links nesta resposta ( https://web.archive.org/web/20171021012954/https://www.enterprisedb.com/news/enterprisedb-announces- new-postgres-rocks-online-user-forum ). Consegui caçar algumas das postagens originais na Wayback Machine. Um link morto que não consegui reparar é: "Janeiro de 2010 - Atualizando para 8.4.2 da 8.4.1", http://forums.enterprisedb.com/posts/list/2115.page#7888 .
fonte
Para o registro, executando o instalador do Windows no Enterprise DB (o padrão, vinculado no site do Postgres ), pelo menos desde a versão atual do Postgres 9.4, você não precisa interromper o
postgresql
serviço. O instalador faz isso por você. Você ainda precisa restabelecer conexões, se houver (a maioria dos clientes faz isso automaticamente).Melhor consulte o manual atual (usando a versão atual do Postgres):
http://www.postgresql.org/docs/current/interactive/upgrading.html
fonte
Acabei de atualizar o Postgres 10.0 para 10.1 e foi uma atualização muito rápida e fácil.
Fiz o download dos binários em https://www.enterprisedb.com/download-postgresql-binaries e descompactei-os para
C:\postgres
, em seguida, renomeei o diretóriopgsql
parapgsql-10.1
para que eu possa manter versões mais antigas até que seja considerado desnecessário.Copiei os arquivos DLL
msvcp120.dll
emsvcr120.dll
paraC:\postgres\pgsql-10.1\bin
porque eu prefiro que a instalação simples sobre o "Installer", que provavelmente acrescenta muito mais inchaço do que o necessário.Eu então usei esse script em lote simples que escrevi no passado:
Corri
SELECT version();
no psql para confirmar a versão antiga:Em seguida, executei o script em lote acima do qual instalou um serviço chamado
postgres-10.1
.Parei o serviço antigo e defini
Startup Type
comoDisabled
, e iniciei o novo serviço.A execução
SELECT version();
novamente no psql confirmou a atualização (teve que executá-la duas vezes devido à interrupção da conexão quando parei o servidor antigo):Lembre-se de que atualizar uma versão principal requer atualização do diretório de dados com
pg_upgrade
ou algum outro método, mas, para uma atualização menor, esse método funcionou como um encanto.fonte
10.1
de10.2
e funcionou muito bem.