MERN栈项目执行node server.js时MongoServerError认证失败如何解决?
解决MongoServerError: bad auth : Authentication failed问题
以下是针对性的解决步骤:
核对MongoDB连接字符串的账号密码
检查项目中.env文件(或配置文件)里的数据库连接字符串,确保用户名、密码和MongoDB Atlas中创建的数据库用户完全匹配,注意区分大小写。如果密码包含特殊字符(如@、$、!),需要进行URL编码,比如@替换为%40,$替换为%24。
正确的连接字符串格式示例:mongodb+srv://your-username:your-encoded-password@cluster0.mongodb.net/your-db-name?retryWrites=true&w=majority验证数据库用户权限
登录MongoDB Atlas控制台,进入目标集群的Database Access页面,找到对应的数据库用户,确认该用户拥有目标数据库的readWrite权限,若权限不足,点击Edit按钮调整权限配置。检查IP白名单设置
在MongoDB Atlas控制台的Network Access页面,确认你的本地IP地址已添加至白名单;测试阶段可临时添加0.0.0.0/0(允许所有IP访问,生产环境禁用),添加后重启服务器重试。确认集群状态
进入MongoDB Atlas集群页面,查看集群是否处于Available状态,若集群正在部署或维护,需等待状态恢复正常后再尝试连接。重置依赖(可选)
若上述步骤无效,可能是依赖包损坏导致的问题,执行以下命令重置依赖:npm cache clean --force rm -rf node_modules package-lock.json npm install完成后重新启动服务器:
node server.js
内容的提问来源于stack exchange,提问作者Suruthi
相关产品推荐
相关产品推荐

