使用Paramiko设置SSH隧道以访问PostgreSQL

zu0ti5jz  于 6个月前  发布在  PostgreSQL
关注(0)|答案(1)|浏览(75)

我目前使用Paramiko来访问SFTP服务器并连接到同一服务器上的PostgreSQL。我发现了许多使用sshtunnel登录PostgreSQL的例子。但我不知道如何使用纯Paramiko。
现在我的代码看起来像这样:

# establish SSH tunnel
self.ssh = paramiko.SSHClient()
self.ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
self.ssh.connect(hostname=host, username=user, password=password)

# setup SFTP server
self.sftp = self.ssh.open_sftp()

# connect to datebase
self.engine = create_engine('postgres+psycopg2://{}:{}@{}:{}/{}'.format(user, password, host, port, db))

字符串
感谢您的任何建议!

c9qzyr3d

c9qzyr3d1#

请注意,sshtunnel只是Paramiko的一个 Package 器。因此,通常情况下,您可以使用它来简化代码,除非您有一些限制阻止您安装其他软件包。
例如:Connecting to PostgreSQL database through SSH tunneling in Python
如果你不能安装它,你基本上至少可以重用它的代码。

相关问题