Eine weitere Variante des PostgreSQL-Errors „Verbindung zum Server konnte nicht hergestellt werden“ ist der Fehler „could not connect to server: Connection refused“.
Verwenden Sie zunächst den Befehl systemctl-status postgresql, um anzeigen zu lassen, dass PostgreSQL ausgeführt wird. Um sicher zu sein, dass PostgreSQL läuft, kann mit systemctl restart postgresql auch ein Neustart durchgeführt werden.
Wenn dies das Problem nicht behebt, ist die wahrscheinlichste Ursache für diesen Fehler, dass PostgreSQL nicht konfiguriert ist, um TCP/IP-Verbindungen zuzulassen.
Um dies zu korrigieren, bearbeiten Sie Ihre postgresql.conf-Datei. Diese finden Sie je nach Linux-Distribution in einem der folgenden Dateipfade:
- Ubuntu 16.04: sudo nano /etc/postgresql/9.5/main/postgresql.conf
- CentOS 7: sudo nano /usr/pgsql-10/share/postgresql.conf
Überprüfen Sie die listen_address-Konfiguration. Um TCP/IP-Verbindungen zuzulassen, sollte diese auf „0.0.0.0.0.0“ (um Verbindungen von allen IP-Adressen zuzulassen) oder auf die spezifische IP-Adresse des Servers eingestellt werden, der zugelassen werden soll.
Wenn diese Konfiguration leer gelassen oder auf localhost gesetzt wird, erlaubt PostgreSQL keine externen TCP/IP-Verbindungen. Dies entspricht auch der Voreinstellung von PostgreSQL.
PostgreSQL kann auch keine Verbindung zum Server herstellen, wenn die Verbindung durch eine Firewall blockiert wird. Beachten Sie, dass alle Cloud Server von der standardmäßigen Firewall-Richtlinie betroffen sind, die über das Cloud Panel gesteuert wird.