mongodb_uri = "mongodb://[username:password@]XX.XX.XX.XX"
client = MongoClient(mongodb_uri)
db = client['database']
print(db)
collection_taxonomy = db['collection']
doc = collection_taxonomy.find()
pprint.pprint(doc)
for each_doc in doc:
pprint.pprint(each_doc)
当我尝试打印集合的每个文档时,我得到time out error
。但是,当我尝试连接到localhost
时,我没有出现超时错误。
尝试与connect=False
client = MongoClient(mongodb_uri,connect=False)
打印每个文档时,我仍然有时间错误。 可能有什么不对?感谢有人可以帮助我。 我使用的是Python 3.5和Pymongo 3.5.1 谢谢, -Roopa
答案 0 :(得分:0)
是“mongodb:// [用户名:密码@] XX.XX.XX.XX”mongodb_uri的实际值,或者您是否将其替换为实际应用中的值?
“getaddrinfo failed”消息表明您在mongodb_uri中输入的主机名无效。
答案 1 :(得分:0)
在实际应用中替换值后删除了方括号([])。 " mongodb的://用户名:password@XX.XX.XX.XX"
像魅力一样工作。 非常感谢。
Roopa
答案 2 :(得分:0)
当我尝试连接的用户帐户具有受限制的权限时,也会遇到相同的错误,因此请尝试更改用户访问权限或使用具有更高特权的其他帐户
具有以下权限的用户失败 readWrite@dbname.colname
具有以下权利的用户有效(请注意,这是为Atlas应用程序创建的用户) atlasAdmin @ admin
答案 3 :(得分:0)
URI应该类似于“ mongodb:// username:password @ host”,其中主机是主机名或IP。
当我使用名称进行连接时,这发生在我身上,但是主机名发生了变化,因此我更改了URI以通过计算机的IP进行连接。