FATAL ERROR lock file “postmaster.pid" existiert bereits
Habe ich vor kurzem installiert PostGIS auf meinem Mac (El Capitan 10.11.4 ist Postgres version 9.5.1) mit Homebrew, und ich bin nach dieser Anleitung - http://morphocode.com/how-to-install-postgis-on-mac-os-x/
Wenn ich versuche zu starten, Postgres mit
pg_ctl -D /usr/local/var/postgres start
Bekomme ich die folgende Fehlermeldung:
$ FATAL: lock file "postmaster.pid" already exists
HINT: Is another postmaster (PID 280) running in data directory "/usr/local/var/postgres"?
So verbrachte ich ein paar Stunden recherche, wie um dies zu beheben, aber ohne Erfolg.
Insbesondere habe ich versucht zu töten, die PID als empfohlen in einer Antwort auf Superuser - https://superuser.com/questions/553045/fatal-lock-file-postmaster-pid-already-exists- (in dem Fall oben, ich lief kill 208
), aber sobald ich versucht zu starten, Postgres wieder,
Ich habe den gleichen Fehler, wenn auch mit einem anderen PID-Nummer. Ich sah ein paar Leute empfohlen, die das löschen der postmaster.pid-Datei, aber ich fühle mich wie ich vielleicht sollte speichern, die als letzten Ausweg...
Zwar Teil der Grund, ich bin nicht sicher, wie dies zu beheben ist, dass ich nicht wirklich klar, was der postmaster auch ist - ich bin gerade erst anfangen zu lernen über all dies.
Hopping in eine Postgres-Datenbank über die psql db_name
Befehl funktioniert, für was es Wert ist.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Postmaster ist der main PostgreSQL-Prozess. Sie versuchen, starten Sie PostgreSQL bereits läuft (und du sagst selbst Sie eine Verbindung herstellen können). Überspringen Sie einfach diesen Schritt Ihres Prozesses.
TL;DR: Da können Sie eine Verbindung zu der Datenbank, die Sie nicht brauchen, um den server wieder starten - es ist bereits ausgeführt.
pg_ctl
zum Steuern des PostgreSQL server. Da Ihr server ist bereits gestartet, Ihr Befehl:Gibt einen Fehler zurück, sagen, dass es eine Sperre auf
postmaster.pid
- das ist wahr, da gibt es schon ein server läuft unter der PID.Gibt es zwei Möglichkeiten:
Könnten Sie aufhören, Ihre server zu tun :
So dass Sie nicht haben, das Schloss an postmaster mehr und könnten Sie Ihren Befehl, um Sie erneut zu starten.
Dieses Posting, falls es jemandem hilft:
Ich hatte das gleiche problem wie der OP nach einem harten Neustart, wenn mein laptop abgestürzt. Was mir geholfen wurde, den folgenden Befehl ausführen, um zu sehen, was PID wurde im Zusammenhang mit dem postmaster.pid:
Die erste Zahl, die angezeigt wird, werden die PID. Suchen in Activity Monitor konnte ich sehen, dass Postgres ausgeführt wurde, aber ohne PID-Nummer, die aufeinander abgestimmt dargestellt.
Anstatt die Schritte in der Antwort verwiesen auf Superuser neu gestartet ich mein laptop richtig und dann eröffnet Terminal und lief
Funktionierte dies ohne entfernen postmaster.pid, die ich sah ein paar andere Beiträge empfehlen. Manchmal sind es die einfachen Lösungen, die funktionieren.
Oft passiert es mir in OSx, wenn mein system Herunterfahren unerwartet.
Können Sie einfach entfernen Sie die Datei
postmaster.pid
.und entfernen Sie den postmaster.pid-Datei
starten Sie die Postgres-mit diesem Befehl