Eu nunca faria do jeito que você está fazendo. Apenas para o registro, eu estive com o PostgreSQL desde, oh, 6.x dias (também conhecido como muitos, muitos anos).
Eu sempre, sem questionar, faço algo ao longo destas linhas:
- Descarregar a versão antiga com o pg_dump
- instale a nova versão, talvez ao lado da sua versão atual na sua situação. Eu sempre sym-link a localização padrão. Se, por exemplo, o pgsql acabar em / usr / local / pgsql, eu mudo isso para /usr/local/pgsql-v9.1.2 e então eu o vinculo sim com o pgsql, então meus scripts RC não precisam de muito ajuste nem meu LD_CONFIG
- Inicie o novo ambiente de banco de dados com a nova versão recém-instalada
- Restaure seus dados com o psql
Eu uso script RC personalizado para parar, iniciar e & reinicie o postmaster e dentro dele eu tenho configurações que apontam para os dados atuais & diretórios xlog.
Além disso, eu entendo que você está usando o gerenciador de pacotes de uma determinada distribuição. Eu evito isso e sempre construo o PostgreSQL a partir do código-fonte.