Ubuntu 14.04.3 LTS et une nouvelle installation de Postgres 9.4 (avec apt-get install postgresql-9.4
, rien d’extraordinaire). Postgres a été lancé avec pg_ctl start
par l'utilisateur postgres.
La commande status signale que le service est arrêté:
[root@box ~]# service postgresql status
9.4/main (port 5432): down
Cependant, le serveur est en cours d'exécution; Je peux voir qu'il écoute 5432 et que je peux me connecter avec 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
connexion 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".
Dois-je faire autre chose pour utiliser Postgres en tant que service?
Pour résumer, vous avez ajouté un référentiel tiers, installé une version plus récente d’un programme que celle proposée par le Centre logiciel Ubuntu. Bien que vous ayez des exécutables exécutables, il vous manque quelques scripts "collés" pour les intégrer à votre système. Je vous recommande de supprimer le référentiel ajouté, puis de mettre à jour les listes de paquets:
Sudo apt-get update
Ensuite, installez postgresql (vous obtiendrez la dernière version proposée)
Sudo apt-get install postgresql postgresql-contrib
Voir https://help.ubuntu.com/community/PostgreSQL
Désormais, 14.04 autorisera l’installation de plusieurs versions de postgresql - mais je suis sûr que la version en cours d’installation sera la dernière. Vous ne savez pas exactement ce qui se passe lorsqu'une version existante est une version ultérieure et n'est pas vraiment configurée de la manière "attendue". Dans le meilleur des cas, il la récupérera et l'exécutera avec le port attribué (5432), puis placera la "nouvelle" version du Centre du logiciel sur le port suivant (5433). Les deux versions peuvent être exécutées simultanément, mais nécessitent des ports différents. Si le port 5432 déjà utilisé est attribué à l'installation de la version 9.4 et que la version 9.4 est simplement ignorée, vous disposez au moins d'un modèle 9.3 des emplacements attendus pour déplacer/ajouter la version 9.4. Des choses comme le lien /etc/rc2.d/S19postgresql vers /etc/init.d/postgresql et le /usr/share/postgresql/9.4
Recherchez ensuite le fichier de configuration qui attribue les ports et assurez-vous que la version 9.4 utilise la valeur par défaut 5432 (si c'est ce que vous voulez).
Dans mon cas, j'ai démarré le serveur postgres mais l'état était 'down'
aussi, je dois démarrer le cluster en faisant pg_ctlcluster 9.4 main start
pour le mettre 'online'
et cela a fonctionné.
j'espère que ça aide.