Ubuntu 14.04.3 LTS e uma nova instalação do Postgres 9.4 (com apt-get install postgresql-9.4
nada sofisticado). O Postgres foi iniciado pg_ctl start
pelo 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 start
para colocar 'online'
e funcionou.
Espero que ajude.