我无法在 Mac Big Sur 上的 MAMP 中添加 pgsql PDO 驱动程序

jal*_*din 5 postgresql mamp psql php-pgsql

我已经使用 PGAdmin4 安装了 MAMP 和 PostgreSQL,但是我遇到了一些问题。

我在终端中收到 psql“找不到命令错误”。我已添加export PATH=/Library/PostgreSQL/10/bin:$PATH~/.bash_profile,但是每当我重新打开终端时,都会再次出现相同的错误。

每当我尝试执行composerphp artisan在我的 Laravel 项目中执行时,我都会收到以下错误,但我仍然能够迁移数据库:

Warning: PHP Startup: Unable to load dynamic library 'pdo_pgsql' (tried: /usr/local/lib/php/pecl/20180731/pdo_pgsql (dlopen(/usr/local/lib/php/pecl/20180731/pdo_pgsql, 9): image not found)

Warning: PHP Startup: Unable to load dynamic library 'pgsql' (tried: /usr/local/lib/php/pecl/20180731/pgsql (dlopen(/usr/local/lib/php/pecl/20180731/pgsql, 9): image not found)

每当尝试浏览项目和PDO Drivers列表中的phpinfo()mysql 和 sqlite 可用,但 pgsql 不可用时,都会出现“未找到驱动程序”错误。

MAMP
PostgreSQL 10
PHP:7.3.21
操作系统:MAC Big Sur

Tam*_*pps 1

我遇到了同样的问题,当我查看php.ini文件时,我发现我的扩展文件夹指向了错误的位置:

extension_dir = "/Applications/MAMP/bin/php/php7.4.2/lib/php/extensions"

但我没有 php7.4.2 的匹配目录 - 我使用 php7.4.9,并确认该扩展存在于该文件夹中。为了解决这个问题,我只需将php.ini文件中的上述行更改为:

extension_dir = "/Applications/MAMP/bin/php/php7.4.9/lib/php/extensions"

然后一切对我来说都很好。