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

PHP 8.3无法加载pdo_mysql驱动,Docker MySQL连接失败求助

解决PHP 8.3无法加载pdo_mysql驱动的问题

针对你遇到的问题,按以下步骤排查修复:

  • 安装对应PHP版本的mysql扩展
    由于你使用的是ppa:ondrej/php的PHP 8.3,需安装版本匹配的扩展包,而非通用的php-mysql:

    sudo apt update && sudo apt install php8.3-mysql
    
  • 确认修改的是CLI版本的php.ini
    PHP内置服务器使用CLI模式的配置文件,执行以下命令找到正确路径:

    php -i | grep "Loaded Configuration File"
    

    打开该路径的php.ini,确保extension=pdo_mysql未被注释(无需写.so后缀,PHP会自动匹配)。

  • 验证扩展目录与文件权限
    执行命令获取PHP扩展目录:

    php -i | grep "extension_dir"
    

    确认pdo_mysql.so存在于该目录,同时检查文件权限:

    ls -l $(php -i | grep -oP 'extension_dir => \K.*')/pdo_mysql.so
    

    确保文件权限为-rw-r--r--(644),所属用户组为root:root。

  • 检查扩展依赖是否完整
    使用ldd命令查看pdo_mysql.so的依赖库是否缺失:

    ldd $(php -i | grep -oP 'extension_dir => \K.*')/pdo_mysql.so
    

    若出现not found的依赖,安装对应的库,例如:

    sudo apt install libmariadb-dev
    
  • 重置扩展缓存并测试
    执行命令重置PHP扩展缓存:

    sudo php8.3 enmod pdo_mysql
    

    然后测试驱动是否加载成功:

    php -r "print_r(PDO::getAvailableDrivers());"
    

    若输出包含mysql,说明驱动已加载,重新启动PHP内置服务器即可正常访问index.php。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 02:32:10