PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Menghubungkan ke database PostgreSQL melalui tunneling SSH dengan Python

Saya tidak tahu apakah ini dapat membantu, tetapi saya juga harus terhubung ke database PostgreSQL melalui tunneling SSH. Saya berhasil terhubung menggunakan kode Anda dengan beberapa modifikasi:

import psycopg2
from sshtunnel import SSHTunnelForwarder

try:

    with SSHTunnelForwarder(
         ('<server ip address>', 22),
         #ssh_private_key="</path/to/private/ssh/key>",
         ### in my case, I used a password instead of a private key
         ssh_username="<server username>",
         ssh_password="<mypasswd>", 
         remote_bind_address=('localhost', 5432)) as server:
         
         server.start()
         print "server connected"

         params = {
             'database': '<dbname>',
             'user': '<dbusername>',
             'password': '<dbuserpass>',
             'host': 'localhost',
             'port': server.local_bind_port
             }

         conn = psycopg2.connect(**params)
         curs = conn.cursor()
         print "database connected"

except:
    print "Connection Failed"

Setelah menambahkan server.start() , kode bekerja dengan baik. Selanjutnya, koma terbalik hilang setelah 'database terhubung'. Saya harap ini dapat membantu Anda, terima kasih telah membagikan kode Anda!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Menghindari Looping Trigger Calls Di PostgreSQL 9.2.1

  2. Cara Bekerja Dengan Database PostgreSQL

  3. SQL - Menggabungkan beberapa kueri serupa

  4. Urutan PostgreSQL berdasarkan kolom lain

  5. Verifikasi koneksi database dengan pg-promise saat memulai aplikasi