【问题标题】:How to connect Pymongo with ssh as Robo3T?如何将 Pymongo 与 ssh 连接为 Robo3T?
【发布时间】:2020-03-03 01:26:14
【问题描述】:

我正在尝试使用 SSH 和 Pymongo 连接远程 mongo 服务器。我使用 python 包 sshtunnel。它适用于 Robo3T,但适用于 python 失败

它适用于 Robo3T:

这是我的代码:

from sshtunnel import SSHTunnelForwarder
from pymongo import MongoClient
from pprint import pprint

MONGO_HOST = "localhost:27017"
MONGO_DB = "dbasename"
MONGO_USER = "username"
MONGO_PASS = "password"

server = SSHTunnelForwarder(
    MONGO_HOST,
    ssh_username=MONGO_USER,
    ssh_password=MONGO_PASS,
    remote_bind_address=('10.0.0.244', 22)
)
server.start()
client = pymongo.MongoClient('127.0.0.1', server.local_bind_port) 
db = client[MONGO_DB]

代码停在server.start()。这是错误:

'无法建立到 SSH 网关的会话'

【问题讨论】:

    标签: ssh pymongo


    【解决方案1】:

    这是有效的代码:

    from sshtunnel import SSHTunnelForwarder
    from pymongo import MongoClient
    from pprint import pprint
    
    MONGO_HOST = "localhost:27017"
    MONGO_DB = "dbasename"
    MONGO_USER = "username"
    MONGO_PASS = "password"
    
    server = SSHTunnelForwarder(
      MONGO_HOST,
      ssh_username=MONGO_USER,
      ssh_password=MONGO_PASS,
      remote_bind_address=('localhost', 27017)
    ) 
    server.start()
    client = MongoClient(host= 'localhost', port=server.local_bind_port) 
    db = client[MONGO_DB]
    

    【讨论】:

      猜你喜欢
      • 2015-08-21
      • 2018-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-04
      • 2013-03-14
      • 2011-03-05
      • 1970-01-01
      相关资源
      最近更新 更多