Ich habe nach einer Lösung gesucht und konnte keine funktionierende Lösung finden.
Ich habe postgres mit brew ( brew install postgres
) in meinem MacBook installiert und verwende es derzeit mit brauservice ( brew services list
zeigt postgres als laufenden Dienst an). Wenn ich versuche, psql
auszuführen, erhalte ich den folgenden Fehler.
psql: Verbindung zum Server konnte nicht hergestellt werden: Keine solche Datei oder Verzeichnis ist das Server wird lokal ausgeführt und akzeptiert Verbindungen in der Unix-Domäne Socket "/tmp/.s.PGSQL.5432"?
Hat jemand schon ähnliches Problem gelöst?
Ich hatte den gleichen Fehler und habe es behoben, indem ich die Prozess-PID-Datei entfernt habe:
rm -f /usr/local/var/postgres/postmaster.pid
Ich habe den gleichen Fehler bei der Installation von postgresql93 aus den Tap-Versionen.
Bei der Überprüfung der .plist-Datei, die in der Ausgabe von brew services list
( ~/Library/LaunchAgents/homebrew.mxcl.postgresql93.plist
) angegeben ist, habe ich die folgende Nachricht gefunden:
FATAL: Das Datenverzeichnis "/ usr / local / var / postgres" hat Gruppen- oder Weltzugriff DETAIL: Berechtigungen sollten u = rwx (0700) sein.
Was mich zu dieser Antwort geführt hat: data directory "/ usr / local / var / postgres "hat eine falsche Eigentümerschaft
Nach dem Ausführen von sudo chmod -R 700 /usr/local/var/postgres
habe ich einen anderen Fehler bekommen:
FATAL: konnte Verzeichnis "pg_tblspc" nicht öffnen: Keine solche Datei oder Verzeichnis
Was mich dann zu: 'pg_tblspc' fehlt nach der Installation der neuesten Version von OS X (Yosemite oder El Capitan)
Nach dem Ausführen von mkdir /usr/local/var/postgres/pg_tblspc/
wurde der Cluster erfolgreich gestartet.
Ich würde die zwei Antworten von Wilson und Grasshopper hier kombinieren.
Sie können die PLIST-Datei für den Postgres-Service mit brew services list
überprüfen, um den Speicherort der Datei zu finden und sie einfach in Ihrem bevorzugten Editor zu öffnen.
Sie sollten den Wert von StandardErrorPath
als aufgelistet sehen:
Und dann sollten Sie das Ende der Protokolldatei mit tail -n 100 /usr/local/var/log/postgres.log
In meinem Fall war der Fehler der folgende:
2017-12-06 11: 51: 16.078 GMT [85476] FATAL: Die Sperrdatei "postmaster.pid" existiert bereits 2017-12-06 11: 51: 16.078 GMT [85476] HINWEIS: Wird ein anderer Postmaster (PID 601) im Datenverzeichnis "/ usr / local / var / postgres" ausgeführt?
Das war, weil ich meinen Mac herunterfahren musste und Postgres keine Möglichkeit hatte, die PID-Datei zu säubern. Entfernen Sie einfach die PID-Datei rm /usr/local/var/postgres/postmaster.pid
und starten Sie postgres brew services start postgresql
Ein Wort der Warnung: Löschen Sie diese PID-Datei nur, wenn Sie sicher sind, dass Postgres nicht ausgeführt wird . Sie können dies tun, indem Sie brew services stop postgresql
ausführen und dann auf das Ergebnis von brew services list
warten, um anzuzeigen, dass posgres im gestoppten Zustand ist.
Tags und Links macos postgresql homebrew