Postgres 9.4 em execução, mas “status do serviço” informa isso

0

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

O comando status reporta o serviço como inativo:

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

No entanto, o servidor está em execução; Eu posso ver que ele está escutando em 5432 e posso me conectar a ele com o 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?

    
por wishihadabettername 12.10.2015 / 22:48

2 respostas

0

Para resumir, você adicionou um repositório de terceiros, instalou uma versão mais recente de um programa do que a oferecida pelo Ubuntu Software Center e, enquanto executava executáveis, faltavam alguns scripts de "cola" para integrá-los ao sistema.   Recomendaria remover o repositório adicionado e atualizar as listas de pacotes:

sudo apt-get update

Em seguida, instale o postgresql (receberá a última versão oferecida)

sudo apt-get install postgresql postgresql-contrib

Veja o link

Agora o 14.04 permitirá várias instalações da versão postgresql - mas tenho certeza que a expectativa é que a versão que está sendo instalada seja a mais recente. Não tenho certeza do que acontece quando uma versão existente é posterior, e realmente não é configurada da maneira "esperada". Na melhor das hipóteses, ele irá buscá-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 por 9.4 e a 9.4 for 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 o /usr/share/postgresql/9.4

Em seguida, rastreie o arquivo conf que atribui as portas e assegure-se de que a versão 9.4 esteja no padrão 5432 (se for o que você deseja).

    
por ubfan1 13.10.2015 / 05:19
0

No meu caso, eu iniciei o servidor postgres, mas o status também foi 'down' , eu tenho que iniciar o cluster fazendo pg_ctlcluster 9.4 main start para colocar 'online' e funcionou.

espero que ajude.

    
por ePascoal 07.01.2016 / 19:09