Postgres 9.4 em execução, mas o "status do serviço" informa que está inativo

Postgres 9.4 em execução, mas o "status do serviço" informa que está inativo

Ubuntu 14.04.3 LTS e uma nova instalação do Postgres 9.4 (com apt-get install postgresql-9.4nada sofisticado). O Postgres foi iniciado pg_ctl startpelo usuário postgres.

O comando status relata o serviço como inativo:

[root@box ~]# service postgresql status
9.4/main (port 5432): down

No entanto, o servidorécorrendo; Posso ver que está escutando em 5432 e posso me conectar a ele com psql.

[root@box ~]# netstat -a -n -p | grep 5432
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      19377/postgres
tcp        0      0 127.0.0.1:5432          127.0.0.1:45724         ESTABLISHED 20280/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45725         ESTABLISHED 20281/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45732         ESTABLISHED 20288/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45726         ESTABLISHED 20282/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45729         ESTABLISHED 20285/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45723         ESTABLISHED 20279/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45730         ESTABLISHED 20286/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45731         ESTABLISHED 20287/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45728         ESTABLISHED 20284/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45727         ESTABLISHED 20283/postgres: ice
unix  2      [ ACC ]     STREAM     LISTENING     4295677  19377/postgres      /var/run/postgresql/.s.PGSQL.5432

conexão psql:

[postgres@box~]$ psql
Password:
psql (9.4.5)

postgres=# \conninfo
You are connected to database "postgres" as user "postgres" via socket in "/var/run/postgresql" at port "5432".

Preciso fazer mais alguma coisa para executar o Postgres como um serviço?

Responder1

Para resumir, você adicionou um repositório de terceiros, instalou uma versão posterior de um programa do que a oferecida pelo Ubuntu Software Center e, embora tenha executáveis ​​executáveis, estão faltando alguns scripts de "cola" para integrá-los ao seu sistema. Eu recomendo remover o repositório adicionado e atualizar as listas de pacotes:

sudo apt-get update

Em seguida, instale o postgresql (obterá a versão mais recente oferecida)

sudo apt-get install postgresql postgresql-contrib

Verhttps://help.ubuntu.com/community/PostgreSQL

Agora o 14.04 permitirá múltiplas instalações de versões do postgresql - mas tenho certeza que a expectativa é que a versão instalada seja a mais recente. Não tenho certeza do que acontece quando uma versão existente é posterior e não está realmente configurada da maneira "esperada". Na melhor das hipóteses, ele irá pegá-lo e executá-lo com a porta atribuída (5432) e colocar a "nova" versão do Centro de Software na próxima porta (5433). Ambas as versões podem ser executadas simultaneamente, mas precisarão de portas diferentes. Se a instalação 9.3 receber a porta 5432 já em uso pela 9.4, e a 9.4 for simplesmente ignorada, você terá pelo menos um modelo 9.3 de locais esperados para mover/adicionar o 9.4. Coisas como o link /etc/rc2.d/S19postgresql para /etc/init.d/postgresql e /usr/share/postgresql/9.4

Em seguida, localize o arquivo conf atribuindo as portas e certifique-se de que a versão 9.4 esteja no padrão 5432 (se é isso que você deseja).

Responder2

No meu caso, iniciei o servidor postgres mas o status estava 'down'demais, tenho que iniciar o cluster fazendo pg_ctlcluster 9.4 main startpara colocar 'online'e funcionou.

Espero que ajude.

informação relacionada