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

运行php artisan migrate时出现用户权限拒绝问题求助

解决Laravel 8 API连接XAMPP phpMyAdmin数据库的权限问题

问题核心

报错SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO),本质是Laravel使用的数据库连接方式与phpMyAdmin中配置的root用户权限不匹配——Mac系统下XAMPP的MySQL对localhost和127.0.0.1的权限规则有严格区分。

分步解决方案

1. 调整.env数据库配置

将DB_HOST从127.0.0.1改为localhost,因为你在phpMyAdmin中创建的是root@localhost用户,Laravel默认用TCP连接127.0.0.1会触发不同的权限校验。修改后的配置如下:

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=draw_db
DB_USERNAME=root
DB_PASSWORD=

2. 清除Laravel配置缓存

修改.env后必须清除缓存,确保新配置生效:

php artisan config:clear
php artisan cache:clear

3. 确认MySQL用户权限

登录phpMyAdmin,进入用户账户页面:

  • 检查root用户的主机是否为localhost
  • 确保该用户拥有draw_db数据库的全部权限(包含迁移所需的CREATE、ALTER等权限)
  • 若未找到root@localhost用户,直接创建:用户名填root,主机选localhost,密码留空,勾选所有权限后保存。

4. 重新执行迁移

完成上述操作后,运行迁移命令:

php artisan migrate

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 20:45:08