Wild stab in the dark: You're on a machine with an IPv6 resolver where localhost
defaults to the IPv6 address ::1
, but listen_addresses
in postgresql.conf
is set to 127.0.0.1
or 0.0.0.0
not *
or you're using an older PostgreSQL built with a C library that doesn't have transparent IPv6 support.
Change listen_addresses
to localhost
and make sure localhost
resolves to both the IPv4 and IPv6 addresses, or set it to ::1, 127.0.0.1
to explicitly specify both IPv4 and IPv6. Or just set it to *
to listen on all interfaces. Alternately, if you don't care about IPv6, connect to 127.0.0.1
instead of localhost
.
See this Google search or this Stack Overflow search for more information.
(Posting despite my close-vote because I voted the question for migration).