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:clearphp artisan cache:clear
补充信息
- 确认phpMyAdmin中显示的MySQL端口确实是3306
- 已经按照phpMyAdmin的界面指引完成了用户创建和权限分配
恳请各位大佬帮忙排查问题,谢谢!
内容的提问来源于stack exchange,提问作者tareenmj
相关产品推荐
相关产品推荐

