Der von Ihnen zitierte Fehler hat nichts mit pg_hba.conf
zu tun; die Verbindung schlägt fehl, die Verbindung wird nicht autorisiert.
Tun Sie, was die Fehlermeldung sagt:
Überprüfen Sie, ob Hostname und Port korrekt sind und ob der Postmaster TCP/IP-Verbindungen akzeptiert
Sie haben den Befehl, der den Fehler erzeugt, nicht angezeigt. Angenommen, Sie verbinden sich auf localhost
Port 5432
(die Standardwerte für eine standardmäßige PostgreSQL-Installation), dann entweder:
-
PostgreSQL wird nicht ausgeführt
-
PostgreSQL lauscht nicht auf TCP/IP-Verbindungen (
listen_addresses
inpostgresql.conf
) -
PostgreSQL lauscht nur auf IPv4 (
0.0.0.0
oder127.0.0.1
) und Sie verbinden sich über IPv6 (::1
) oder umgekehrt. Dies scheint ein Problem bei einigen älteren Mac OS X-Versionen zu sein, die ein seltsames IPv6-Socket-Verhalten aufweisen, sowie bei einigen älteren Windows-Versionen. -
PostgreSQL lauscht auf einem anderen Port als dem, auf dem Sie sich verbinden
-
(unwahrscheinlich) gibt es ein
iptables
Regel, die Loopback-Verbindungen blockiert
(Falls nicht Verbindung auf localhost
, es kann auch eine Netzwerk-Firewall sein, die TCP/IP-Verbindungen blockiert, aber ich vermute, dass Sie die Standardeinstellungen verwenden, da Sie es nicht gesagt haben).
Also ... überprüfen Sie diese:
-
ps -f -u postgres
solltepostgres
auflisten Prozesse -
sudo lsof -n -u postgres |grep LISTEN
odersudo netstat -ltnp | grep postgres
sollte die TCP/IP-Adressen und Ports anzeigen, auf denen PostgreSQL lauscht
BTW, ich denke, Sie müssen auf einer alten Version sein. Bei meiner 9.3-Installation ist der Fehler etwas detaillierter:
$ psql -h localhost -p 12345
psql: could not connect to server: Connection refused
Is the server running on host "localhost" (::1) and accepting
TCP/IP connections on port 12345?