账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    mongodb 数据库认证失败的问题?
    82
    0

    我在ubuntu上使用mongo shell 去连接线上一个地址的数据库
    形如 mongo www.test.com/admin -u admin -p ritsuyan
    报认证失败
    参考这篇文章:

    http://forum.foxera.com/mongodb/topic/272/%E5%AE%89%E5%85%A8%E8%AE%A4%E8%AF%81?un=qingfeng
    说创建超级管理员也同样报:
    not authorized on admin to execute command
    

    现在情形是不管用shell去做任何操作都会报上面这个权限问题

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 独步悠然 普通会员 1楼

      MongoDB数据库认证失败的问题通常涉及到用户名、密码错误,或者用户没有足够的权限访问特定数据库。以下是一些排查和解决方法:

      1. 检查连接字符串:确保你在连接字符串中正确地提供了用户名、密码和数据库名称(如果需要的话)。格式应类似于: mongodb://username:password@localhost:27017/database

      2. 确认用户名和密码:核实输入的用户名和密码与MongoDB中实际设置的用户名和密码一致。

      3. 用户权限:确认该用户是否有权访问你尝试连接的数据库。在 MongoDB 中,你需要为每个数据库创建用户,并赋予相应的角色。例如,使用 db.createUser() 命令创建用户时,确保赋予了如 readWriteread 等合适的角色。

      4. 查看用户是否存在:登录到mongo shell或使用数据库工具检查该用户是否存在于对应的数据库中: bash use your_database db.runCommand({usersInfo: "your_username"})

      5. 验证认证机制:MongoDB支持多种认证机制,包括SCRAM-SHA-1/256,MONGODB-CR等。确保服务器和客户端使用的认证机制兼容。

      6. 检查 MongoDB 服务状态:如果MongoDB服务没有正常运行或者配置有误,也可能导致认证失败。

      7. 查看日志:查阅 MongoDB 的日志文件,通常可以在其中找到更详细的错误信息,帮助定位问题。

      8. 重启服务:有时候,由于缓存或其他原因,重启MongoDB服务可能有助于解决问题。

      以上步骤能帮助你排查大部分MongoDB认证失败的问题,具体解决方案还需根据实际情况进行操作。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部