Ich habe Postgresql auf meinem Windows 10-PC installiert. Ich habe das Tool pgAdmin II verwendet, um eine Datenbank namens company zu erstellen, und jetzt möchte ich den laufenden Datenbankserver starten. Ich kann nicht herausfinden, wie das geht. Ich habe den Startbefehl in der Postgres-Befehlszeile ausgeführt, und es scheint nichts zu passieren.
Was ich tue ist:
postgres=# pg_ctl start
postgres=# pg_ctl status
postgres=# pg_ctl restart
postgres=# pg_ctl start company
postgres=# pg_ctl status
.....-> Ich sehe nichts zurück.
postgresql
Sean
quelle
quelle
psql
stellt normalerweise ohnehin eine Verbindung zu einem laufenden Server her. Wenn Sie also starten könnten,psql
läuft Postgres bereitspg_ctl
Befehle werden Server verwendet undnet
Befehle sind Service bezogenAntworten:
pg_ctl
ist ein Befehlszeilenprogramm (Windows), keine SQL-Anweisung. Sie müssen das von einem tuncmd.exe
. Oder verwendennet start postgresql-9.5
Wenn Sie Postgres über das Installationsprogramm installiert haben, sollten Sie den Windows- Dienst starten , anstatt ihn
pg_ctl
manuell auszuführen, z. B.:net start postgresql-9.5
Beachten Sie, dass der Name des Dienstes in Ihrer Installation möglicherweise anders ist. Eine weitere Option besteht darin, den Dienst über die Windows-Systemsteuerung zu starten
Was bedeutet, dass Postgres bereits ausgeführt wird, sodass ich nicht verstehe, warum Sie denken, dass Sie das erneut tun müssen. Insbesondere, weil das Installationsprogramm den Dienst normalerweise so einstellt, dass er beim Start von Windows automatisch gestartet wird.
Der Grund, warum Sie kein Ergebnis sehen, ist,
psql
dass jeder SQL- Befehl beendet werden muss,;
in Ihrem Fall wartet er nur darauf, dass Sie die Anweisung beenden.Weitere Informationen finden Sie hier: Warum haben einige Befehle in psql keine Auswirkung?
quelle
Gehen Sie in den Ordner bin im Laufwerk C, in dem Postgres installiert ist. Führen Sie den folgenden Befehl in Git Bash oder Eingabeaufforderung aus:
Ex:
Eine andere Möglichkeit: Geben Sie "services.msc" in das Ausführungs-Popup ein (Windows + R). Daraufhin werden alle ausgeführten Dienste angezeigt. Wählen Sie den Postgres-Dienst aus der Liste aus und klicken Sie auf Start / Stopp / Neustart.
Vielen Dank
quelle
Wenn Sie postgres über das Windows-Installationsprogramm installiert haben, können Sie es in den Diensten wie folgt starten:
quelle
Nach vielen Suchen und Tests habe ich die Lösung gefunden: Wenn Sie in Windows sind:
1 - Zuerst müssen Sie das PG-Datenbankverzeichnis gefunden haben. Führen Sie den Befehl als SQL-Befehl in den pgAdmin-Abfragetools aus
$ show data_directory;
2 - gehe in das bin-Verzeichnis von postgres, in meinem Fall befindet es sich "c: / programms / postgresSql / bin"
Öffnen Sie eine Eingabeaufforderung (CMD) und führen Sie diesen Befehl aus:
Das sollte es tun.
quelle
pg_ctl -D "D:\PSG_SQL\data" start
sollte der Server gestartet werden.Wenn Sie eine Fehlermeldung erhalten "psql.exe 'wird nicht als interner oder externer Befehl erkannt, ..."
Es kann sein: Ursachen
oder - Der PostgreSQL-Datenbankclient ist nicht auf Ihrem PC installiert
Da Sie PostgreSQL bereits installiert haben, kann letzteres nicht das Problem sein (vorausgesetzt, alles wird wie erwartet installiert).
Um das erste Problem zu beheben , geben Sie bitte den vollständigen Pfad zum bin-Verzeichnis an im PostgreSQL-Installationsordner an, in dem sich dieses Tool befindet."
Zum Beispiel
Pfad: "C: \ Programme \ PostgreSQL \ 10 \ bin"
quelle
Ich fand mit
net start postgres_service_name
die einzige zuverlässige Möglichkeit, Postgres unter Windows zu betreiben
quelle
Entfernen Sie die Postmaster-Datei unter "C: \ Programme \ PostgreSQL \ 9.6 \ data".
und starten Sie die PostgreSQL-Dienste neu
quelle
Suchen Sie zuerst Ihre Binärdatei, in der sie gespeichert ist. Holen Sie sich den Pfad in Terminal Mine ist
Finden Sie dann Ihren lokalen Benutzerdatenpfad, in dem er sich meistens befindet
Jetzt müssen wir nur noch den folgenden Befehl im Pfad des Binärterminals drücken:
C: \ Benutzer \ LENOVO \ Dokumente \ postgresql-9.5.21-1-windows-x64-binaries (1) \ pgsql \ bin>
pg_ctl -D "C:\usr\local\pgsql\data" start
alles erledigt!
Autovaccum Launcher gestartet! Prost!
quelle