使用pymongo进行mongo身份验证

时间:2020-08-29 18:06:24

标签: python mongodb pymongo

我在通过PyMongo访问mongo数据库时遇到问题。我有root用户,并且还为数据库创建了一个“ app”用户。我创建了一个包含两个集合的数据库。在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,那两个彼此交谈就很好。

谢谢

0 个答案:

没有答案