Problem beim Installieren und Konfigurieren von PostgreSQL

18

Ich bin ein Neuling hier und an der Serveradministration. Vor ein paar Tagen habe ich mit Ubuntu 11.04 einen Server bei Hetzner registriert .

Ich beabsichtige, mit PostgreSQL zu arbeiten, das ich aus dem Quellcode installiert habe, nachdem ich es nicht mit apt-get installiert habe. Die Installation als solche schlägt nicht fehl, aber der PostgreSQl-Dienst startet nicht automatisch oder wenn ich versuche, ihn manuell zu starten. Es schlägt mit der folgenden Fehlermeldung fehl, wenn ich versuche, etwas damit zu tun:

manager@Ubuntu-1104-natty-32-minimal:~$ sudo su postgres -c psql template1
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"?

Dies war der Fehler, den ich bekam, als ich PostgreSQL mit apt-get installiert und von der Quelle neu installiert hatte. Das Folgende ist die Ausgabe, die ich erhalten habe, als ich sie von der Quelle installiert habe. Dies bestätigt, dass PostgreSQL tatsächlich installiert ist.

make -C config install
make[1]: Entering directory `/home/manager/postgresql-9.0.4/config'
/bin/mkdir -p '/usr/local/pgsql/lib/pgxs/config'
/bin/sh ../config/install-sh -c -m 755 ./install-sh '/usr/local/pgsql/lib/pgxs/config/install-sh'
make[1]: Leaving directory `/home/manager/postgresql-9.0.4/config'
PostgreSQL installation complete.

Wird der Dienst nicht automatisch gestartet? Das gibt es hier nicht:

manager@Ubuntu-1104-natty-32-minimal:~$ ps auxw | grep post
manager   6734  0.0  0.0   4156   868 pts/0    S+   14:10   0:00 grep --color=auto post

Dies belastet meine Geduld und mein Vertrauen. Bitte helfen Sie mir, dieses Problem zu lösen.

Syed Aslam
quelle

Antworten:

27

Beantwortung meiner eigenen Frage. Das ist ein bisschen nervig, die erste Frage auf einer StackExchange-Site ist für mich nicht gut.

Ich hatte das schon gemacht, aber irgendwie hat es diesmal geklappt. Machte dies:

  1. sudo apt-get update und sudo apt-get upgrade
  2. sudo apt-get purge postgresql *
  3. sudo apt-get -f installieren
  4. sudo apt-get install postgresql

Klappt wunderbar.

Hinweis: Durch Hinzufügen des * im Befehl purge werden alle Pakete gelöscht, die mit postgresql beginnen

Syed Aslam
quelle
4
perl: warning: Setting locale failedIch möchte nur darauf hinweisen, dass die Installation bei der Installation von postgresql dazu führen kann, dass kein neuer Cluster erstellt wird und der postgresql-Server nicht gestartet wird. Das Problem mit dem Gebietsschema zu beheben und postgresql mit der obigen Anweisung neu zu installieren, hat bei mir funktioniert.
Hieu
Das hat für mich wie ein Zauber gewirkt! Vielen Dank, ich habe jetzt 9.5 installiert, als ich ursprünglich 9.3 installiert habe, aber wechseln wollte. Im Switch hat die Installation und Neuinstallation nicht sehr gut funktioniert.
Mark Tomlin
6

Auch ich war mit Hetzner mit diesem Problem konfrontiert und sehr nervig. Hier ist, wie ich es gelöst habe

sudo apt-get purge postgresql* # Endung * ist wichtig

sudo apt-get install postgresql

Ich vermute, dass entweder Hetzners 11.04-Image fehlerhaft ist oder Ubuntus .deb (allerdings unwahrscheinlich).

Shekhar
quelle
2

Ich habe diesen Fehler auf dem Launchpad im Zusammenhang mit Natty nicht gesehen. Das gleiche Problem wurde als Fehler im Launchpad für Hardy gemeldet und behoben. Wenn ich also dieser Logik folge, würde ich davon ausgehen, dass es sich um einen Fehler handelt, und es ist wahrscheinlich die beste Vorgehensweise, einen Fehler auf dem Launchpad einzureichen.

Als ich näher darauf einging, fand ich zwei interessante (noch alte) Themen, die genau denselben Fehler zeigten, der es wert zu sein scheint, untersucht zu werden:

Dieses Thema aus dem Jahr 2006 spricht über genau dasselbe Problem und behauptet, dass

sudo /etc/init.d/postgresql-8.1 stop

sudo /etc/init.d/postgresql-8.1 start

psql template1

funktioniert.

Auf ubuntuforums gibt es ein Thema von 2008 über den gleichen Fehler und hat den Status 'gelöst'. Bitte werfen Sie einen Blick auf die vielen Vorschläge in diesem Thema.

Rinzwind
quelle
2

psql ist der cli-client, er startet den PostgreSQL-Server nicht. Zum Starten des Servers sollten Sie Folgendes verwenden:

/etc/init.d/postgresql start

Dann können Sie mit psql eine Verbindung herstellen.

Um PostgreSQL beim Booten zu starten, sollten Sie folgende Schritte ausführen:

update-rc.d postgresql enable

Sie könnten auch einen Blick darauf werfen:

http://www.cyberciti.biz/tips/how-to-controlling-access-to-linux-services.html

Cliff Wells
quelle
0

Unter Ubuntu 14.04 hatte ich ähnliche Probleme und konnte es mit den oben genannten Lösungen nicht zum Laufen bringen. Am Ende habe ich hier meine Antwort gefunden .

a) Ich habe diesen Befehl aptitude search postgresql|grep ^iim Terminal ausgeführt und die folgenden Ergebnisse erhalten:

i   postgresql                      - object-relational SQL database (supported 
i A postgresql-9.3                  - object-relational SQL database, version 9.
i A postgresql-client-9.3           - front-end programs for PostgreSQL 9.3     
i A postgresql-client-common        - manager for multiple PostgreSQL client ver
i A postgresql-common               - PostgreSQL database-cluster manager

b) Dann: sudo aptitude purge postgresql postgresql-9.3 postgresql-common

c) Zum Schluss: sudo aptitude install postgresql

Alles funktioniert jetzt gut.

8bithero
quelle