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

部署项目至服务器后配置.env数据库连接遇SQLSTATE[HY000] [2002]错误求助

错误原因排查与解决
  • 核心问题:密码里的特殊字符未做URL编码
    你的数据库连接URL中,密码包含#、[这类URL特殊字符,会打乱URL的解析逻辑:

    • #在URL里是锚点标记,解析时会把#前面的wnpilxkx_yassine误判成数据库主机地址(而非用户名),这直接触发了getaddrinfo for wnpilxkx_yassine failed的错误。
    • 另外[属于URL保留字符,同样需要编码才能被正确识别。
  • 修复方法

    1. 将密码中的特殊字符替换为对应URL编码值:
      • # → %23
      • [ → %5B
        原密码#QXKzJS[AvMP编码后变为%23QXKzJS%5BAvMP
    2. 修改后的配置行:
      export DATABASE_URL="mysql://wnpilxkx_yassine:%23QXKzJS%5BAvMP@127.0.0.1:3306/wnpilxkx_easemploy"
      
    3. 保存.env文件后重启应用服务,确保新配置生效。
  • 额外验证建议
    可以用服务器上的mysql命令行直接测试连接,确认数据库账号密码本身无问题:

    mysql -u wnpilxkx_yassine -p'#QXKzJS[AvMP' -h 127.0.0.1 -P 3306 wnpilxkx_easemploy
    

    如果命令行能成功连接,说明数据库本身正常,问题确实出在URL的特殊字符编码上。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 15:35:40