sql >> Databasteknik >  >> RDS >> PostgreSQL

Postgresql :Anslutningen nekades. Kontrollera att värdnamnet och porten är korrekta och att postmastern accepterar TCP/IP-anslutningar

Felet du citerar har ingenting att göra med pg_hba.conf; det misslyckas med att ansluta, inte att auktorisera anslutningen.

Gör som felmeddelandet säger:

Kontrollera att värdnamnet och porten är korrekta och att postmastern accepterar TCP/IP-anslutningar

Du har inte visat kommandot som ger felet. Förutsatt att du ansluter på localhost port 5432 (standardinställningarna för en standard PostgreSQL-installation), sedan antingen:

  • PostgreSQL körs inte

  • PostgreSQL lyssnar inte efter TCP/IP-anslutningar (listen_addresses i postgresql.conf )

  • PostgreSQL lyssnar bara på IPv4 (0.0.0.0 eller 127.0.0.1 ) och du ansluter på IPv6 (::1 ) eller tvärtom. Det här verkar vara ett problem på vissa äldre Mac OS X-versioner som har konstigt IPv6-socketbeteende, och på vissa äldre Windows-versioner.

  • PostgreSQL lyssnar på en annan port än den du ansluter på

  • (osannolikt) det finns en iptables regel som blockerar loopback-anslutningar

(Om du inte är det ansluter på localhost , det kan också vara en nätverksbrandvägg som blockerar TCP/IP-anslutningar, men jag antar att du använder standardinställningarna eftersom du inte sa det).

Så ... kolla dessa:

  • ps -f -u postgres bör lista postgres processer

  • sudo lsof -n -u postgres |grep LISTEN eller sudo netstat -ltnp | grep postgres bör visa TCP/IP-adresserna och portarna som PostgreSQL lyssnar på

BTW, jag tror att du måste ha en gammal version. På min 9.3-installation är felet något mer detaljerat:

$ 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?



  1. Hur undkommer jag ett enstaka citat i SQL Server?

  2. Hur man skapar ett serverlöst GraphQL API för MySQL, Postgres och Aurora

  3. Hur får man information om en användardefinierad typ?

  4. Varför kan jag inte utföra en aggregatfunktion på ett uttryck som innehåller ett aggregat men jag kan göra det genom att skapa en ny select-sats runt det?