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

使用FileZilla上传PHP文件后遇SQLSTATE[HY000][1045]数据库连接错误

解决数据库连接1045访问拒绝问题
  • 检查服务器端数据库用户权限
    本地XAMPP的数据库环境和学校服务器完全独立,你本地的user@localhost用户权限只在本地生效。登录学校提供的phpMyAdmin,确认:

    • 服务器上是否存在对应用户名的数据库用户,且该用户的主机权限不是仅限制为localhost(很多虚拟主机要求用户主机设为服务器IP或%)
    • 该用户已被授予目标数据库的必要权限(至少包含INSERT、SELECT、UPDATE、DELETE)
  • 核对数据库连接参数
    别直接复用本地XAMPP的配置,学校服务器的参数肯定不一样:

    • 主机地址:大概率不是localhost,可能是学校提供的专属数据库域名/IP
    • 数据库名:通常会带项目前缀(比如你的学号或项目名开头),不是你本地的database
    • 用户名/密码:必须使用学校分配的数据库凭证,和本地XAMPP的默认账号完全无关
  • 确认数据库已正确导入服务器
    你改了数据库名后缀但没解决问题,大概率是没把本地数据正确迁移到服务器:

    • 从本地XAMPP的phpMyAdmin导出数据库为.sql文件(保留后缀)
    • 登录学校的phpMyAdmin,创建一个和连接参数里一致的数据库
    • 通过「导入」功能上传本地导出的.sql文件,完成数据同步
  • 排查代码中的硬编码配置
    检查你的PHP连接代码,确保所有参数都替换成了服务器端的信息,比如别留着本地的配置:

    // 错误的本地配置
    // $dsn = 'mysql:host=localhost;dbname=database;charset=utf8mb4';
    // $username = 'user';
    // $password = 'local_pass';
    
    // 替换为服务器配置
    $dsn = 'mysql:host=学校数据库主机;dbname=服务器数据库名;charset=utf8mb4';
    $username = '服务器数据库用户名';
    $password = '服务器数据库密码';
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 00:45:07