postgres atualizado de 9.1 para 9.2, a atualização necessária do banco de dados falha

2

Ao passar do postgres 9.1 para 9.2, ele diz que as bases de dados precisam ser atualizadas, assim, ao dar o comando upgrade que dou e obter o seguinte

$ sudo service postgresql upgrade
Stopping postgresql service:                               [  OK  ]
Upgrading database:                                        [FAILED]
See /var/lib/pgsql9/pgupgrade.log for details.

O conteúdo do arquivo de log /var/lib/pgsql9/pgupgrade.log é

Performing Consistency Checks
-----------------------------
Checking current, bin, and data directories                 ok
Checking cluster versions                                   ok

connection to database failed: fe_sendauth: no password supplied


could not connect to old postmaster started with the command:
"/usr/lib64/pgsql/postgresql-9.1/bin/pg_ctl" -w -l "pg_upgrade_server.log" -D "/var/lib/pgsql9/data-old" -o "-p 5432 -b  -c listen_addresses='' -c unix_socket_permissions=0700 -c unix_socket_directory='/var/lib/pgsql9'" start
Failure, exiting

Eu usei o postgres com senha para ativar algo assim pg_connect("host=localhost port=5432 dbname=pgdbname user=postgres password=postgrespassword");

Eu tinha yum update d meu sistema e caí nisso. Você pode até sugerir uma maneira de reverter tudo, então será ótimo!

    
por rahulg 12.04.2013 / 07:26

1 resposta

4

Solução alternativa

Edite seu pg_hba.conf e defina as conexões em local a trust durante a atualização.

Antecedentes

A equipe Amazon Linux da Amazon tomou a decisão bizarra de fazer uma grande atualização de versão do PostgreSQL em uma simples "atualização yum". A maioria dos fornecedores usa diferentes nomes de pacotes para diferentes versões principais, para que os usuários tenham que tomar a decisão explícita de atualizar. A Amazon ainda não o fez e < href="https://forums.aws.amazon.com/thread.jspa?messageID=397693"> não leve a sério o feedback sobre esse assunto .

Atualizar usuários para uma nova versão do PostgreSQL em "yum update" é a coisa errada a se fazer exatamente pelo motivo que você encontrou: pg_upgrade tem limitações, e você não pode fazer um dump e recarregar a menos que tenha o binários da versão antiga do servidor.

Eu escreveu uma nota sobre isso há algum tempo .

A entrada do FAQ do Amazon Linux sobre este tópico melhorou desde que escrevi sobre isso, mas ainda não reconhece que está criando o problema com suas políticas de empacotamento ruim.

Considere seriamente usar uma distro que tenha mais cuidado com o empacotamento do PostgreSQL. A equipe do PGDG não está produzindo pacotes para o Amazon Linux neste momento, caso contrário, eu recomendaria usá-los.

    
por 13.04.2013 / 03:23