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

Laravel应用访问远程MySQL数据库时出现SQLSTATE[HY000] [2002]权限拒绝错误求助

Laravel连接远程MySQL数据库报错SQLSTATE[HY000] [2002] Permission denied

我正在尝试让我的Laravel应用连接另一台服务器上的MySQL数据库,但每次访问测试路由时都会收到这个错误:SQLSTATE[HY000] [2002] Permission denied。

我的配置信息

.env 文件(已做隐私处理)

DB_CONNECTION=mysql
DB_HOST=IP_ADDRESS
DB_PORT=3306
DB_DATABASE=DB_NAME
DB_USERNAME="laravel_user"
DB_PASSWORD="password"

web.php 测试路由

Route::get('/test', function(){
    return DB::select("select * from umts_list");
});

另外,我可以通过浏览器访问 IP.ADDRESS/phpmyadmin 正常操作这台远程服务器上的数据库,不确定这个信息有没有帮助。

已尝试的解决步骤

  • 登录远程服务器的phpMyAdmin,创建了名为laravel_user的新用户,给它赋予了目标数据库的所有数据SELECT权限,并设置密码为password
  • 因为修改了.env文件,执行了缓存清理命令:
    • php artisan config:clear
    • php artisan cache:clear

补充信息

  • 确认phpMyAdmin中显示的MySQL端口确实是3306
  • 已经按照phpMyAdmin的界面指引完成了用户创建和权限分配

恳请各位大佬帮忙排查问题,谢谢!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 18:04:07