Podany błąd nie ma nic wspólnego z pg_hba.conf
; nie udaje się połączyć, nie przestaje autoryzować połączenia.
Zrób to, co mówi komunikat o błędzie:
Sprawdź, czy nazwa hosta i port są poprawne oraz czy postmaster akceptuje połączenia TCP/IP
Nie pokazałeś polecenia, które powoduje błąd. Zakładając, że łączysz się z localhost
port 5432
(domyślnie dla standardowej instalacji PostgreSQL), a następnie:
-
PostgreSQL nie działa
-
PostgreSQL nie nasłuchuje połączeń TCP/IP (
listen_addresses
wpostgresql.conf
) -
PostgreSQL nasłuchuje tylko na IPv4 (
0.0.0.0
lub127.0.0.1
) i łączysz się przez IPv6 (::1
) lub odwrotnie. Wydaje się, że jest to problem w niektórych starszych wersjach systemu Mac OS X, które mają dziwne zachowanie gniazda IPv6, a także w niektórych starszych wersjach systemu Windows. -
PostgreSQL nasłuchuje na innym porcie niż ten, na którym się łączysz
-
(mało prawdopodobne) istnieje
iptables
reguła blokująca połączenia zwrotne
(Jeśli nie) łączenie na localhost
, może to być również zapora sieciowa, która blokuje połączenia TCP/IP, ale zgaduję, że używasz ustawień domyślnych, ponieważ nie powiedziałeś).
Więc ... sprawdź te:
-
ps -f -u postgres
powinien wyświetlić listępostgres
procesy -
sudo lsof -n -u postgres |grep LISTEN
lubsudo netstat -ltnp | grep postgres
powinien pokazać adresy TCP/IP i porty, na których nasłuchuje PostgreSQL
BTW, myślę, że musisz być na starej wersji. W mojej instalacji 9.3 błąd jest bardziej szczegółowy:
$ 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?