[英]Unable to connect to mongodb running on a remote machine
我在远程服务器上运行 mongodb。 我可以将 ssh 连接到远程服务器,并从远程机器上的 shell 连接到 mongodb。 但是我必须从我的 python 脚本连接到那个 mongodb 实例。 但是,我无法使用以下命令在运行 linux 的本地机器上直接从 shell 连接到 mongodb:
mongo <remote_ip>:27017
或通过 pymongo 使用
connection = pymongo.Connection("<remote_ip>", 27017)
使用 pymongo 时出现以下错误:
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/usr/local/lib/python2.6/dist-packages/pymongo-1.11-py2.6-linux-i686.egg/pymongo/connection.py", line 370, in __init__
self.__find_master()
File "/usr/local/lib/python2.6/dist-packages/pymongo-1.11-py2.6-linux-i686.egg/pymongo/connection.py", line 605, in __find_master
raise AutoReconnect("could not find master/primary")
AutoReconnect: could not find master/primary
什么可能导致这个问题? 这是否意味着 mongo 正在 27017 以外的端口上运行,如果是这样,我如何找出它正在运行的端口?
请帮忙谢谢
您可以在运行 mongodb 的机器上使用netstat -a -p
来查看它连接到哪个端口。 ( netstat -a
列出所有连接, -p
提供拥有该连接的程序的名称。)还要确保远程计算机允许该端口上的外部连接(连接没有被防火墙阻止)并且 mongodb 是接受远程连接。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.