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

Laravel 8集成MongoDB执行php artisan migrate提示认证失败如何解决

Laravel 8 MongoDB 认证失败报错解决方案

原因1:MongoDB未开启身份认证(本地开发最常见)

Windows环境安装MongoDB默认不会启用身份校验,此时填写用户名密码会直接触发认证失败:

  • 操作步骤:
    • 修改.env文件,注释或清空账号密码配置:
      DB_HOST=127.0.0.1
      DB_PORT=27017
      DB_DATABASE=mongonews
      # 注释掉以下两行
      # DB_USERNAME=root
      # DB_PASSWORD=
      
    • 执行php artisan config:clear清空Laravel配置缓存
    • 重新运行php artisan migrate测试即可

原因2:身份认证配置不匹配

如果确认你已经手动开启了MongoDB身份认证,按以下项逐一核对:

  • 核对认证库配置:你当前默认认证库为admin,如果你的root用户是在mongonews库下创建的,需要在.env新增配置:
    DB_AUTHENTICATION_DATABASE=mongonews
    
  • 核对账号密码:确认root用户的密码是否正确,若设置了密码请填写到DB_PASSWORD配置项
  • 执行php artisan config:clear清空缓存后重新测试迁移

快速验证方式

你可以直接通过Mongo shell验证账号有效性,确认能正常连接后再同步配置到Laravel即可:

# 无身份认证场景连接测试
mongo 127.0.0.1:27017/mongonews

# 有身份认证场景连接测试,admin替换为你的实际认证库
mongo --port 27017 -u "root" -p "你的密码" --authenticationDatabase "admin"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 04:06:08