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

Laravel5.8连接PostgreSQL报Doctrine\DBAL\Driver\PDOException找不到驱动如何解决

解决方案

核心根因

你修改的是XAMPP对应Apache的PHP配置,执行php artisan命令调用的是系统命令行的PHP,二者使用独立的配置文件,且你配置的扩展后缀是Windows系统的.dll,不符合Mac系统要求。

操作步骤

  1. 定位命令行PHP的配置文件路径
    执行以下命令,查看Loaded Configuration File对应的路径,这才是需要修改的配置文件:
php --ini
  1. 修改配置文件中的扩展配置
    Mac系统的PHP扩展后缀为.so,将你之前写的.dll配置替换为以下内容:
extension=pdo_pgsql.so
extension=pgsql.so
  1. 验证扩展是否加载成功
    执行以下命令,如果输出pdo_pgsql和pgsql两个条目,说明扩展配置生效:
php -m | grep pgsql

如果无输出,说明系统PHP未安装pgsql扩展,执行对应版本的扩展安装命令即可,例如你使用PHP7.3的话执行:

brew install php@7.3-pgsql
  1. 匹配兼容的依赖版本
    Laravel 5.8不支持高版本的doctrine/dbal,指定安装兼容版本:
composer require doctrine/dbal:^2.9
  1. 清理项目缓存后测试启动
php artisan config:clear
php artisan serve

额外说明

php artisan serve调用的是PHP内置开发服务器,和XAMPP的Apache服务完全无关,不需要浪费时间排查Apache启动问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 07:27:01