You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决连接MongoDB时出现的认证失败问题?

解决mongosh连接MongoDB时的认证失败问题

排查及解决步骤

  • 确认认证数据库匹配:你指定的<DATABASE_NAME>必须是该用户创建时关联的认证库(多数场景下用户会在admin库创建,若你的用户属于其他库则需对应切换)。不确定的话先尝试用admin库连接:
    mongosh --port <PORT> admin -u <USERNAME> -p <PASSWORD>
    
  • 核对用户名密码准确性:注意MongoDB的用户名、密码区分大小写,检查是否输入了多余空格;若密码包含特殊字符,用双引号包裹避免解析错误:
    mongosh --port <PORT> <DATABASE_NAME> -u <USERNAME> -p "<PASSWORD>"
    
  • 验证服务状态与端口:确认<PORT>是MongoDB实际监听的端口(默认27017),且MongoDB服务处于运行状态。可通过系统命令(如netstat、lsof)检查端口占用,或查看MongoDB日志确认服务启动正常。
  • 检查用户权限配置:若能通过本地无认证方式登录MongoDB(比如localhost默认免权),执行以下命令查看用户的所属库及权限:
    use <DATABASE_NAME>
    db.getUser("<USERNAME>")
    
    确认该用户拥有目标数据库的连接权限,且认证库配置无误。
  • 匹配认证机制:新版本MongoDB默认使用SCRAM-SHA-256认证,确保mongosh客户端支持该机制。可查看MongoDB配置文件中security.authorization是否开启,以及security.authenticationMechanisms的设置是否与客户端兼容。

报错信息:

MongoServerError: Authentication failed.

内容的提问来源于stack exchange,提问作者Tayan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 17:07:02