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

macOS Big Sur下Laravel执行php artisan migrate报pgsql驱动未找到

问题原因排查与解决步骤

核心常见原因

你大概率排查错了配置文件:phpinfo()展示的是Web服务(MAMP)调用的PHP配置,而php artisan命令走的是命令行(CLI)模式的PHP,二者默认调用的PHP版本、加载的php.ini文件通常是独立的。

下一步检查项

  • 首先确认CLI实际调用的PHP版本与加载的配置文件:
    执行以下两条命令:
    which php
    php -i | grep "Loaded Configuration File"
    
    对比输出的配置文件路径是否是你修改过的路径,如果不一致,说明你之前改的是Web端PHP的配置,对CLI无效。
  • 确认CLI模式下是否真的加载了pgsql相关扩展:
    执行命令:
    php -m | grep pgsql
    
    正常应该输出pdo_pgsql和pgsql两个结果,如果没有输出说明扩展未成功加载。

对应解决方案

方案1:想继续用MAMP的PHP跑CLI命令

把MAMP的PHP路径加到系统环境变量优先级最高的位置,编辑你的终端配置文件(~/.zshrc 或 ~/.bash_profile,根据你用的终端类型选择),加入以下内容:

export PATH="/Applications/MAMP/bin/php/php7.4.12/bin:$PATH"

保存后执行source ~/.zshrc(或对应配置文件)生效,重新打开终端后再执行php -v确认版本是MAMP的7.4.12即可。

方案2:用brew安装的PHP跑CLI命令

光在php.ini里加扩展启用行没用,brew版本的PHP默认不自带pgsql扩展,需要手动安装:

  1. 先确认本地已安装postgresql:brew install postgresql
  2. 用pecl安装pdo_pgsql扩展,若提示权限不足前面加sudo即可:
pecl install pdo_pgsql

安装过程中如果提示输入postgresql的路径,填入你本地postgresql的安装路径即可(默认是/usr/local/Cellar/postgresql/对应版本号)。

最后验证

操作完成后重启终端,再次执行php artisan migrate即可正常运行。

内容的提问来源于stack exchange,提问作者code-8

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 00:45:02