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

Laravel部署CyberPanel后遇MySQL 'Access denied for user'错误求助

数据库访问拒绝(Access denied)问题排查方案

一、数据库用户权限与访问范围问题

  • 确认CyberPanel创建的数据库用户是否拥有chih_chihab2023数据库的完整操作权限(SELECT、INSERT、UPDATE、DELETE等),部分环境默认创建的用户权限可能不全。
  • 检查用户允许的访问主机:在phpMyAdmin的mysql.user表中,查看对应用户的Host字段,确保是localhost、127.0.0.1或%(允许所有主机),Laravel默认使用localhost连接,若用户仅允许特定IP访问会导致拒绝。

二、.env配置核对与缓存清理

  • 严格核对.env中的数据库配置项,注意用户名可能不是数据库名(CyberPanel通常会生成带前缀的用户,比如与数据库同名的用户,但需确认):
    DB_CONNECTION=mysql
    DB_HOST=localhost
    DB_PORT=3306
    DB_DATABASE=chih_chihab2023
    DB_USERNAME=你的数据库用户名
    DB_PASSWORD=你的数据库密码
    
  • 若密码包含特殊字符(如#、$),需用双引号包裹,例如:DB_PASSWORD="test#123$"
  • 修改.env后必须执行缓存清理命令,避免Laravel读取旧配置:
    php artisan config:clear
    php artisan cache:clear
    

三、MySQL服务与日志排查

  • 检查MySQL服务状态:在终端执行systemctl status mysqld(或mysql,依系统而定),确认服务处于运行状态。
  • 查看MySQL错误日志(路径通常为/var/log/mysql/error.log,或CyberPanel面板的日志模块),日志会明确提示错误原因(如用户不存在、密码错误、权限不足等)。

四、密码有效性验证

  • 直接用该数据库用户登录phpMyAdmin,确认密码是否正确。若登录失败,在CyberPanel中重新设置用户密码,同步更新到.env后再测试。

五、配置缓存强制清除

  • 若之前执行过php artisan config:cache,修改.env不会立即生效,需先执行php artisan config:clear,再重启CyberPanel中的PHP-FPM服务。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 15:37:37