Python:如何先连接到远程服务器,再连接到远程数据库?

时间:2020-10-30 18:36:41

标签: python ssh psql

我已经找到了大量有关如何使用python连接到远程服务器上的数据库的资源。我需要从另一台远程服务器连接到远程服务器上的数据库。

我正在尝试使用psycopg2SSHTunnelForwarder来做到这一点:

import psycopg2
from sshtunnel import SSHTunnelForwarder

with SSHTunnelForwarder(('<REMOTE SERVER>', 22),
                        ssh_username='ubuntu',
                        ssh_pkey='~/.ssh/my_private_key',
                        remote_bind_address=('<REMOTE SERVER>', 22)):
    conn = psycopg2.connect(database='<database name>',
                            user='<username>',
                            password='<password>',
                            host='<REMOTE DATABASE SERVER>',
                            port=5432)

    cursor = conn.cursor()

这挂起,什么也不做。

我非常确定问题是我对remote_bind_address的重视。我知道通常应该指向远程服务器上的数据库端口,但是由于我的数据库位于另一台远程服务器上,因此我不确定如何填充此值以使其起作用。

0 个答案:

没有答案