python使用pymongo连接mongo数据库,解决认证失败OperationFailure: Authentication failed. full error: {‘ok‘: 0.0, ‘er

 须知: 代码只用于测试连接mongo数据库是否成功,未做增删改查操作

1.使用pymongo连接数据库

1.1连接无密码认证的,提供ip地址和端口

def conn_mongo_no_pass():
    import pymongo
      
    client = pymongo.MongoClient('mongodb://192.168.2.127:27017/',serverSelectionTimeoutMS=5000)

    client.server_info()    #验证连接是否成功
    client.close()

1.2连接需要Password认证的mongo数据库

def conn_mongo_user_pass():
    import pymongo

    client = pymongo.MongoClient('mongodb://192.168.2.127:27017/',serverSelectionTimeoutMS=5000)
    db = client['admin']  #好像必须是admin
    db.authenticate('username', 'password')#修改用户名和密码
    client.server_info()    #验证连接是否成功
    client.close()

2.连接密码认证时遇到的问题

pymongo.errors.OperationFailure: Authentication failed., full error: {‘ok‘: 0.0, ‘errmsg‘: ‘A

还有

pymongo.errors.OperationFailure: Authentication failed.

3.解决方式

将你的pymongo版本安装为3.8.0版本

pip uninstall pymongo

pip install pymongo==3.8.0

按照代码连接即可

解决方案引用连接(可能需要梯):pymongo.errors.OperationFailure: Authentication failedを解消したい

pymongo中文文档:https://www.osgeo.cn/mongo-python-driver/installation.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值