2017-09-04 5 views
0

Ich versuchte, Postgres mit Python durch den folgenden Code zu verbinden. Aber ich kann es nicht verbinden Ich bekomme einen Fehler.So verbinden Sie Postgres mit Python

import psycopg2 
import sys 

def main(): 
    #Define our connection string 
    conn_string = "host='11.20.89.233' dbname='postgres' user='good_user' password='secret'" 

    # print the connection string we will use to connect 
    print "Connecting to database\n ->%s" % (conn_string) 

    # get a connection, if a connect cannot be made an exception will be raised here 
    conn = psycopg2.connect(conn_string) 

    # conn.cursor will return a cursor object, you can use this cursor to perform queries 
    cursor = conn.cursor() 
    print "Connected!\n" 

if __name__ == "__main__": 
    main() 

Ich habe den folgenden Fehler erhalten.

[email protected]:~/mppcases> python testcon.py 
Connecting to database 
     ->host='11.20.89.233' dbname='good_user' user='secret' 
password='mpp_tool' 
Traceback (most recent call last): 
    File "testcon.py", line 19, in <module> 
    main() 
    File "testcon.py", line 12, in main 
    conn = psycopg2.connect(conn_string) 
    File "/usr/lib64/python2.6/site-packages/psycopg2/__init__.py", line 179, 
in connect 
    connection_factory=connection_factory, async=async) 
psycopg2.OperationalError: could not connect to server: Connection refused 
     Is the server running on host "11.20.89.233" and accepting 
     TCP/IP connections on port 16100? 
+0

Sind Sie sicher, dass Ihr Postgres auf Port hört '16100'? Das ist kein Standard. –

+0

Überprüfen Sie die IP, der Port und die Anmeldeinformationen sind korrekt – Vinny

+0

Wo zu validieren. IP und Anmeldeinformationen sind korrekt. Port Ich weiß nicht, wo ich validieren soll. – Vivek

Antwort

0

Zuerst müssen Sie sicherstellen, dass Sie den richtigen Anschluss verwenden und zweitens müssen Sie Sie die IP-Adresse in die PostgreSQL pg_hba.conf Datei hinzuzufügen.

host all all x.x.x.x/32 md5