sql >> Database >  >> RDS >> PostgreSQL

Verbindingsfout tijdens het verbinden met PostgreSQL als postgres-gebruiker?

U probeert verbinding te maken met PostgreSQL op localhost met behulp van een script dat op uw computer wordt uitgevoerd, maar daar draait geen PostgreSQL-server.

Om dit te laten werken, moet je ssh naar de externe server en vervolgens je Python-script daar uitvoeren, waar de PostgreSQL-server "lokaal" is ten opzichte van het Python-script.

(Daarom draait u psql werkt - omdat u het op de externe server uitvoert , waarbij PostgreSQL "lokaal" is ten opzichte van psql ).

Als alternatief kunt u:

  • Gebruik een SSH-tunnel om de PostgreSQL-poort door te sturen van de lokale computer naar de externe; of

  • Maak rechtstreeks via TCP/IP verbinding met de externe PostgreSQL-server met behulp van de hostnaam of het IP-adres, nadat u externe verbindingen op de server hebt ingeschakeld.

Houd er rekening mee dat u alleen het IP-adres of de hostnaam van de server in de verbindingsreeks plaatst in plaats van localhost werkt niet tenzij u de server ook configureert om externe verbindingen te accepteren . Je moet listen_addresses set instellen om te luisteren naar niet-lokale verbindingen, voeg eventueel vereiste firewallregels toe, stel pg_hba.conf in om verbindingen vanaf externe machines toe te staan ​​en bij voorkeur SSL in te stellen. Dit alles wordt behandeld in het hoofdstuk Clientverificatie van de gebruikershandleiding van PostgreSQL.

U zult waarschijnlijk een SSH-tunnel eenvoudiger en gemakkelijker te begrijpen vinden.




  1. Sequelize Migration:relatie <tabel> bestaat niet

  2. 1064 SQL-fout oplossen bij het importeren van database in Wampserver

  3. MySQL oplopende waarde

  4. Gegevens migreren naar Firebase vanuit mysql