切换PHP版本后WordPress遇MySQL扩展缺失及数据库连接错误求助
我来帮你一步步拆解并解决这个问题——你遇到的其实是GoDaddy主机上PHP版本和WordPress数据库扩展适配的典型问题,咱们分情况处理,而且优先推荐你用更安全的高版本PHP,别停留在已经淘汰的PHP5.4上。
一、PHP 7.1下的「MySQL扩展缺失」问题
WordPress在PHP7及以上版本中,依赖的是mysqli扩展(改进版MySQL扩展),而旧的mysql扩展在PHP7里已经被官方移除了——这就是你看到错误的核心原因。GoDaddy的PHP7.1默认可能没开启mysqli,你只需要去cPanel里开启它:
- 登录GoDaddy的cPanel后台,找到「Select PHP Version」(或者类似命名的PHP管理工具)
- 在扩展列表里找到
mysqli选项,勾选它,然后点击「Save Changes」保存设置 - 回到你的WordPress站点刷新页面,这个错误应该就能解决了
二、PHP 5.4下的「数据库连接失败」问题
虽然你说数据库配置正确,但降级到PHP5.4后出现连接错误,大概率是这几个细节没注意到:
1. 数据库主机名不是localhost
GoDaddy的数据库主机名通常不是简单的localhost,你需要去GoDaddy的数据库管理界面找正确的主机地址:
- 登录GoDaddy,进入「My Products」找到你的数据库服务,点击「Manage」
- 在「Connection Details」里复制完整的主机名(比如类似
db123456.hosting-data.io这种格式) - 打开WordPress根目录的
wp-config.php文件,把DB_HOST的值替换成这个正确的主机名
2. 数据库用户权限不足
即使用户名密码正确,该用户可能没有访问对应数据库的权限:
- 在GoDaddy数据库管理界面,进入「Users」选项卡
- 找到你给WordPress用的数据库用户,确认它已经被授予对应数据库的所有权限(SELECT、INSERT、UPDATE、DELETE等)
- 同时检查该用户的「Host Access」设置,确保允许从你的主机IP访问(GoDaddy通常会自动配置,但可以手动确认)
3. PHP5.4的数据库扩展未开启
PHP5.4里虽然还保留着旧的mysql扩展,但如果没开启也会导致连接失败:
- 回到cPanel的「Select PHP Version」页面
- 确保
mysql和mysqli两个扩展都被勾选,保存设置
4. 测试数据库连接是否正常
为了排除WordPress本身的问题,你可以写一个简单的测试脚本:
创建一个名为test-db.php的文件,内容如下:
<?php // 替换成你的数据库信息 $host = '你的数据库主机名'; $user = '数据库用户名'; $pass = '数据库密码'; $dbname = '数据库名'; // 尝试连接数据库 $conn = mysqli_connect($host, $user, $pass, $dbname); if (!$conn) { die("连接失败: " . mysqli_connect_error()); } echo "数据库连接成功!"; ?>
把这个文件上传到你的主机根目录,然后访问你的域名/test-db.php,如果显示「数据库连接成功」,说明数据库本身没问题,问题出在WordPress的配置或者文件上;如果还是报错,根据错误提示就能定位具体问题。
最后建议
PHP5.4已经在2015年就停止了所有安全更新,继续使用会有很大的安全风险,所以优先解决PHP7.1的mysqli扩展问题,回到高版本PHP上运行你的WordPress站点。
内容的提问来源于stack exchange,提问作者Adele Gomez

