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

MERN栈新手连接MongoDB报bad auth Authentication failed错误如何解决

错误原因

bad auth : Authentication failed是MongoDB连接时身份校验失败的报错,你的场景下触发原因主要有以下几种:

  • 连接字符串内的<password>占位符未替换为实际的数据库用户密码,MongoDB无法识别占位符格式的凭证
  • 数据库用户名或密码填写错误,比如存在特殊字符未转义、大小写不匹配、修改密码后未同步更新连接字符串
  • 你使用的MongoDB Atlas数据库用户没有对应目标库的访问权限
  • 你的运行设备IP未加入MongoDB Atlas的访问白名单,部分场景下也会抛出身份校验失败的错误
  • 额外注意:你的代码里存在两处非直接引发当前报错,但会导致后续运行异常的问题:CONNETCION_URL拼写错误(少了一个C,正确应为CONNECTION_URL);app.listen参数错误,不应该把端口和回调函数包裹在数组内传入。
解决方案
  • 替换连接字符串占位符:将连接串中的<password>完整替换为数据库用户myratcharyyev对应的实际密码,注意不要保留左右尖括号。如果密码包含@、:、/这类特殊字符,需要先做URL编码再填入。
  • 校验数据库用户权限:登录MongoDB Atlas控制台,进入「Database Access」页面,确认myratcharyyev用户的密码和你填入的一致,且权限配置至少包含目标库myFirstDatabase的读写权限,临时测试可以直接授予「Read and write to any database」权限。
  • 配置IP白名单:进入Atlas控制台的「Network Access」页面,添加你当前运行项目设备的公网IP到白名单,临时测试可添加0.0.0.0/0允许所有IP访问(生产环境务必关闭该配置)。
  • 修正代码语法错误:将app.listen([PORT, () => console.log(Server running on port : ${PORT})])修改为app.listen(PORT, () => console.log(Server running on port : ${PORT})),避免服务启动异常。

所有配置修改完成后重启项目即可正常连接数据库。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 14:57:04