2017-09-10 7 views
0

Ich habe eine Postgres-Datenbank auf einem Linux-Computer und ich möchte auf zwei anderen Computer zugreifen, ein Mac und ein Windows, ich staple Stackoverflow und einige Tutorials im Web, aber alle (von dem, was ich gefunden habe) zeigen how to allow a remote connection to database.Wie eine Remote-Verbindung mit Postgres haben?

Ich habe getan, was eine Remote-Verbindung erlauben, aber ich weiß nicht, wie ich eine Verbindung zu meiner Datenbank herstellen soll, nehme an, dass ich von einem Python-Skript mit sqlalchemy verbinden möchte. Ich freue mich über Ihre Hilfe, wenn Sie mir sagen, wie kann ich auf die Datenbank zugreifen mit Terminal und cmd zusätzlich zu der Art, wie ich von sqlalchemy zugreifen kann.

Ich setze listen_addresses='*' in postgresql.conf und füge host all all 0.0.0.0/0 md5 zur letzten Zeile von pg_hba.conf hinzu.

Antwort

0

Anforderungen: 1. SQLAlchemy 2. psycopg2

Verwendung pip die oben genannten Pakete zu installieren.

pip install SQLAlchemy 
pip install psycopg2 

Ein Beispiel für eine SQLAlchemy Verbindungszeichenfolge, die psycopg2 verwendet (Sie Python cmd für Schnelltest verwenden):

from sqlalchemy import create_engine 
engine=create_engine('postgresql+psycopg2://user:[email protected]/database_name') 
0

Ich nehme an, Sie die postgres db von außen zugänglich gemacht haben.

Auch ich nehme an, Sie haben bereits Benutzer und volle privilegierte Datenbank Name auf postgress db erstellt.

Deshalb, wenn db Benutzer remote mit Passwort hat remote und haben die volle Berechtigung für db mydb dann unter Befehl auf dem Remote-Computer verwenden Sie Zugriff erlangen können.

Stellen Sie sicher, Remote-Computer hat postgresql Server/Client zu installieren

psql -Uremote -h <remote-ip-address> -d my_db -Wremote 

zugegriffen Gaining sqlalchemy verwenden Sie können verweisen @Kalyan Antworten

+0

Ich bin nicht sicher, dass unsere Annahme von außen über den Zugriff wahr ist, aber vorher, um das zu untersuchen, wie kann ich meine Remote-IP-Adresse herausfinden, ich versuche, ifconfig zu verwenden und zu finden, was mit 192.168. *. * Wenn das ist die Art, die ich finden sollte remote-ip denke ich db ist nicht erlaubt von außen. – Mehdi

+0

Ja, das stimmt. ifconfig zeigt die korrekte IP an. Sie können http://www.thegeekstuff.com/2014/02/enable-remote-postgresql-connection/comment-page-1/ einsehen, um den Fernzugriff zu konfigurieren – MaNKuR

Verwandte Themen