Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用pymongo进行mongo身份验证_Python_Mongodb_Pymongo - Fatal编程技术网

Python 使用pymongo进行mongo身份验证

Python 使用pymongo进行mongo身份验证,python,mongodb,pymongo,Python,Mongodb,Pymongo,我在通过PyMongo访问我的mongo数据库时遇到问题。我有根用户,我还为我的数据库创建了一个“应用”用户。我创建了一个包含两个集合的数据库。通过mongo shell,我可以验证和查询我的数据。然而,当我尝试pyMongo时,我得到“身份验证失败” 我的python如下所示: from pymongo import MongoClient client = MongoClient('mongodb://user:pass@localhost/mydatabase') db = clien

我在通过PyMongo访问我的mongo数据库时遇到问题。我有根用户,我还为我的数据库创建了一个“应用”用户。我创建了一个包含两个集合的数据库。通过mongo shell,我可以验证和查询我的数据。然而,当我尝试pyMongo时,我得到“身份验证失败”

我的python如下所示:

from pymongo import MongoClient

client = MongoClient('mongodb://user:pass@localhost/mydatabase')

db = client.mydatabase
data = db.mycollection.find()
for d in data:
    print(d)
堆栈输出如下所示:

raise OperationFailure(msg % errmsg, code, response,
pymongo.errors.OperationFailure: Authentication failed., full error: {'ok': 0.0, 'errmsg': 'Authentication failed.', 'code': 18, 'codeName': 'AuthenticationFailed'}
我相信这很简单,但我想不出来

Mongo在docker容器中运行。我还有另一个集装箱里的Monge Express,这两个集装箱可以很好地交谈


谢谢

Shell使用相同的URI工作?mongod日志应该有一个登录失败的条目,该条目可能会提供更多详细信息。