Postmaster PostgreSQL não inicia

Postmaster PostgreSQL não inicia

Estou tentando instalar uma instância do PostgreSQL depois de construí-la a partir do código-fonte, mas executar o postmasterdaemon antes de iniciar o cluster de banco de dados não parece funcionar. Aqui está a mensagem de erro que recebi quando o iniciei:

postgres@Home:~$ /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data
LOG:  could not bind IPv4 socket: Address already in use
HINT:  Is another postmaster already running on port 5432? If not, wait a few seconds 
       and retry.
WARNING:  could not create listen socket for "localhost"
FATAL:  could not create any TCP/IP sockets

Depois de pesquisar no Google, o único resultado que encontrei que me deu algumas dicas me disse para executar os seguintes comandos, cujo resultado é o seguinte:

postgres@Home:~$ lsof -i :5432
COMMAND   PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
postgres 1169 postgres    3u  IPv4   1998      0t0  TCP localhost:postgresql (LISTEN)

postgres@Home:~$ netstat -an|grep :5432
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN   

O que me leva a acreditar que a conexão à qual a porta que o postmasterdaemon está tentando conectar está, de fato, disponível. Alguma idéia sobre o que pode estar causando isso?

E se você estiver curioso, estou executando o pgsql 9.2.3. (Além disso, mova isso para Stack Overflow ou Programmers se este for o site errado do Stack Exchange para fazer isso.)

Responder1

A mensagem de erro na postmasterinicialização com falha e a netstatsaída mostram que já existe um processo que usa a 5432porta TCP. Provavelmente é o PostgreSQL já instalado como parte do seu sistema. Veja se você tem opostgresql-9.1pacote instalado e a saída de pg_lsclusters.

Se você quiser executar seu próprio PostgreSQL autocompilado lado a lado com aquele pré-empacotado para Ubuntu, será necessário alterar a portentrada de configuração em seu arquivo /usr/local/pgsql/data/postgresql.conf.

Se por outro lado você quiser apenas o PostgreSQL auto-compilado rodando e usando a porta padrão 5432, você pode remover o pacote Ubuntu ou desabilitar o cluster na inicialização editando/etc/postgresql/9.1/main/start.conf

informação relacionada