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

WordPress连接Azure Database for MySQL提示建立数据库连接错误

WordPress连接Azure MySQL报错排查方案

按优先级从高到低排查:

  • 优先排查SELinux拦截:如果托管WordPress的虚拟机是CentOS/RHEL/Rocky/AlmaLinux这类默认开启SELinux的系统,你在CLI命令行下跑测试脚本、用mysql客户端连接,用的是当前登录用户的权限,不受SELinux针对web服务的规则限制;而httpd/nginx/php-fpm的web进程默认被SELinux禁止发起外部网络连接,这是该场景下最高发的故障原因。直接执行命令setsebool -P httpd_can_network_connect 1放开web进程外连权限,刷新页面测试即可。
  • 检查WordPress默认SSL连接逻辑冲突:WordPress 5.8及以上版本会自动检测MySQL服务的SSL支持能力,即使你已经在Azure侧关闭了require_secure_transport参数,WordPress主动发起SSL连接握手失败也会抛数据库连接错误。在wp-config.php的数据库配置块下方添加一行配置define('MYSQL_CLIENT_FLAGS', 0);,强制WordPress使用和你测试脚本一致的无SSL普通方式连接数据库后测试。
  • 检查是否有残留的数据库接管插件:进入wp-content目录,查看是否存在db.php、object-cache.php这类drop-in插件文件,这类文件会直接覆盖WordPress默认的数据库连接逻辑,很可能残留了旧的错误连接配置。把这类文件改名备份后再测试连接。
  • 核对配置文件权限和内容:
    • 确认wp-config.php的权限为640,归属对应用户/用户组(Debian/Ubuntu系是www-data,RHEL/CentOS系是apache/nginx),避免web进程没有读权限,读取不到配置参数用空值连接报错。
    • 检查wp-config里的DB_NAME、DB_USER、DB_PASSWORD、DB_HOST四个常量的值前后有没有多余的空格、换行或者不可见字符,复制粘贴配置时很容易带入这类字符导致连接参数错误。
  • 核对web端PHP配置一致性:在web根目录新建phpinfo探针,对比CLI下(执行php -i | grep mysqli)和web端的mysqli扩展状态,确认web端的mysqli扩展正常加载、没有被禁用,也没有配置异常的全局默认连接参数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 17:09:22