L'errore che citi non ha nulla a che fare con pg_hba.conf
; non riesce a connettersi, non riesce ad autorizzare la connessione.
Fai quello che dice il messaggio di errore:
Verifica che il nome host e la porta siano corretti e che il postmaster accetti connessioni TCP/IP
Non hai mostrato il comando che produce l'errore. Supponendo che ti stia connettendo su localhost
porta 5432
(i valori predefiniti per un'installazione PostgreSQL standard), quindi:
-
PostgreSQL non è in esecuzione
-
PostgreSQL non sta ascoltando le connessioni TCP/IP (
listen_addresses
inpostgresql.conf
) -
PostgreSQL è in ascolto solo su IPv4 (
0.0.0.0
o127.0.0.1
) e ti stai connettendo su IPv6 (::1
) o vice versa. Questo sembra essere un problema su alcune versioni precedenti di Mac OS X che hanno uno strano comportamento del socket IPv6 e su alcune versioni precedenti di Windows. -
PostgreSQL è in ascolto su una porta diversa da quella su cui ti stai connettendo
-
(improbabile) c'è un
iptables
regole che bloccano le connessioni di loopback
(Se lo sei non connessione su localhost
, potrebbe anche essere un firewall di rete che sta bloccando le connessioni TCP/IP, ma suppongo che tu stia utilizzando le impostazioni predefinite poiché non l'hai detto).
Quindi ... controlla quelli:
-
ps -f -u postgres
dovrebbe elencarepostgres
processi -
sudo lsof -n -u postgres |grep LISTEN
osudo netstat -ltnp | grep postgres
dovrebbe mostrare gli indirizzi TCP/IP e le porte su cui PostgreSQL è in ascolto
A proposito, penso che tu debba essere su una vecchia versione. Sulla mia installazione 9.3, l'errore è piuttosto più dettagliato:
$ 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?