Sur Ubuntu 14.04, j'ai fait cela pour obtenir les derniers postgres:
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade
J'ai ensuite installé la version 9.4:
sudo apt-get install postgresql-9.4
Cependant, il semble que j'ai maintenant trois versions:
sudo service postgresql stop
* Stopping PostgreSQL 9.3 database server [ OK ]
* Stopping PostgreSQL 9.4 database server [ OK ]
* Stopping PostgreSQL 9.5 database server [ OK ]
Comment puis-je conserver seulement 9.4 et désinstaller les autres? Merci
MISE À JOUR:
Comme suggéré dans les commentaires, j'ai désinstallé 9.3 et 9.5.
Mais quand je fais ça:
sudo service postgresql status
9.3/main (port 5432): down
9.4/main (port 5434): online
9.5/main (port 5433): down
Jusqu'ici tout va bien, mais quand je passe aux postgres:
sudo su postgres
et faire un psql, j'obtiens une erreur:
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
14.04
postgresql
Houman
la source
la source
sudo apt-get remove postgresql-9.3
que supprimer 9.3 (après l'arrêt du serveur 9.3)Réponses:
Différentes versions de PostgreSQL se trouvent dans les packages postgresql-9. *.
Vous devez donc supprimer vos deux packages:
Ensuite, vous devez supprimer les dossiers de configuration inutiles:
Et à partir du dossier / var / lib / si vous avez:
J'espère que cela vous aidera.
la source
Ajouter la réponse très tard mais pourrait aider les gens ici.
Réponse courte: une erreur indique que postgres est configuré sur un mauvais port (pas par défaut). Utilisez le bon port
Réponse longue: lorsque vous avez installé plusieurs versions de Postgresql, toutes ont commencé à exécuter des clusters postgres sur différents ports. Dans votre sortie, les versions suivantes de Postgres sont en cours d' exécution:
9.3 --> 5432
,9.4 -->5434
,9.5 --> 5433
.Vous pouvez désinstaller les autres versions en utilisant
sudo apt-get purge postgresql-9.x
où9.x
est votre version mais dans votre cas, la version (9.4) qui était présente sur votre système est configurée pour fonctionner sur le port 5434. Ainsi, l'erreurIs the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
indique parfaitement que psql par défaut essaye de se connecter au port5432
qui ne n'a plus de postgres attachés.Deux solutions ici :
psql -p 5434
option ie port (-p / - port) dans la commande psql.port
valeur de configuration de votre serveur postgres dans/etc/postgresql/9.5/main/postgresql.conf
pour servir sur 5432. N'oubliez pas de redémarrer postgres après modification.la source