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

Laravel项目部署至000webhostapp免费主机时数据库连接错误求助

解决Laravel部署到000webhostapp时的SQL连接拒绝错误

这个SQLSTATE[HY000] [2002] Connection refused错误是Laravel部署到免费主机时的常见问题——核心原因是你的项目没能和000webhost的数据库建立有效连接,虽然你能用phpMyAdmin成功访问,但Laravel的配置大概率有几个关键细节没对齐,我给你一步步排查:

1. 先核对数据库核心连接参数(别依赖默认值!)

000webhost的免费主机数据库不允许用localhost作为主机地址,而且所有数据库资源(用户名、库名)都带有平台专属前缀,你得从000webhost控制面板里提取准确信息:

  • 登录000webhost面板,进入项目的「MySQL Databases」页面,这里可以看到:
    • Database Host: 通常是类似mysql.hostinger.com的专属域名(绝对不能填localhost)
    • Database Name: 格式为uXXXXXXXXX_自定义库名(比如u123456789_myblog)
    • Database Username: 同样带前缀,比如u123456789_admin
    • Database Password: 你创建数据库时设置的密码,注意是否包含特殊字符

2. 重点检查.env文件的配置(优先级高于database.php)

Laravel默认优先读取.env里的数据库变量,哪怕你在config/database.php里写了配置,.env不对就白搭。确保你的.env数据库配置是这样的:

DB_CONNECTION=mysql
DB_HOST=【从000webhost面板复制的数据库主机地址】
DB_PORT=3306
DB_DATABASE=【完整的数据库名】
DB_USERNAME=【完整的数据库用户名】
DB_PASSWORD=【你的数据库密码】

⚠️ 注意:如果密码里包含#、$、!这类特殊字符,记得用双引号把密码括起来,比如DB_PASSWORD="myp@ssw0rd#123",避免解析错误。

3. 清除Laravel的配置缓存

部署后Laravel可能缓存了旧的配置,导致新的数据库参数没生效,你需要清除缓存:

  • 如果000webhost提供了终端权限,执行这两条命令:
    php artisan config:clear
    php artisan cache:clear
    
  • 如果没有终端,直接删除项目根目录下bootstrap/cache文件夹里的config.php文件,Laravel就会重新读取最新配置。

4. 确认数据库用户的连接权限

虽然你能用phpMyAdmin连接,但要确保这个数据库用户允许从Laravel所在的服务器连接:

  • 登录phpMyAdmin,点击顶部的「用户账户」,找到你的数据库用户
  • 编辑该用户,把「主机」选项设置为%(允许任何主机连接),然后保存
  • 000webhost通常默认配置好了这个,但有时候会有例外,检查一下没坏处

5. 快速测试连接的小技巧

如果还是找不到问题,可以加个测试路由获取更详细的错误信息:
在routes/web.php里添加这段代码:

Route::get('/test-db', function () {
    try {
        \DB::connection()->getPdo();
        return "✅ 数据库连接成功!";
    } catch (\Exception $e) {
        return "❌ 连接失败:" . $e->getMessage();
    }
});

部署后访问你的域名+/test-db,就能看到比原错误更精准的失败原因。

最后补充几个常见坑

  • 000webhost免费主机有数据库连接数限制,但刚部署的话基本不会触发这个问题;
  • 尽量通过.env管理数据库配置,不要手动修改config/database.php的默认mysql配置,避免环境混淆;
  • 确保你上传的项目文件是完整的,尤其是.env文件(很多人会忽略上传这个文件)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 04:12:25