Ubuntu 24.04 默认PHP 8.3需安装php-mysql(或php8.3-mysql)扩展以启用mysqli和PDO MySQL驱动,安装后重启php8.3-fpm或apache2,并用php -m验证扩展是否加载成功。

Ubuntu 24.04 默认安装的 PHP 8.3(如通过系统源或 Ondřej Surý PPA 安装)需要单独启用 MySQL 扩展才能连接 MySQL 数据库。这个扩展叫 php-mysql,它实际提供的是 mysqli 和 PDO MySQL 两个驱动,不是旧版的 mysql_*(已废弃)。
确认 PHP 版本和当前扩展状态
先检查你用的是哪个 PHP 版本和 FPM/CLI 模式:
-
php -v或php-fpm -v看主版本(例如 8.3.12) -
php -m | grep -i mysql查看是否已加载mysqli或pdo_mysql - 若无输出,说明扩展未启用或未安装
安装 php-mysql 扩展(推荐方式)
Ubuntu 24.04 的官方仓库和 Ondřej Surý PPA 都提供对应 PHP 版本的扩展包。执行以下命令即可安装并自动启用:
- 如果是系统默认 PHP 8.3:
sudo apt install php-mysql - 如果用了 Ondřej Surý 的 PPA(常见于需多版本共存场景):
sudo apt install php8.3-mysql - 该包会同时安装
mysqli和pdo_mysql扩展,并在/etc/php/8.3/mods-available/mysql.ini中配置好
验证扩展是否生效
安装后需重启 PHP 处理器才能加载新扩展:
立即学习“PHP免费学习笔记(深入)”;
- 用 FPM(搭配 Nginx):
sudo systemctl restart php8.3-fpm - 用 Apache:
sudo systemctl restart apache2 - 再运行
php -m | grep -E 'mysqli|pdo_mysql',应有两行输出 - 也可建
/var/www/html/test.php写<?php phpinfo(); ?>,浏览器访问查看 “mysqli” 和 “PDO” 模块是否列出
常见问题处理
如果仍报 Class 'mysqli' not found 或连接失败:
- 确认没漏掉
php8.3-mysql(而非只装了php8.3-common) - 检查
/etc/php/8.3/fpm/conf.d/20-mysqli.ini是否存在且未被注释 - 确保 MySQL 服务本身已运行:
sudo systemctl status mysql - PHP 连接时不要用
mysql_connect()(已移除),改用new mysqli(...)或PDO



















