更新到 macOS Big Sur 后,我无法使用 MAMP 连接到我的 PostgreSQL 数据库 [英] After updating to macOS Big Sur I can't connect to my PostgreSQL database with MAMP

查看:97
本文介绍了更新到 macOS Big Sur 后,我无法使用 MAMP 连接到我的 PostgreSQL 数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是引发错误的代码.

try {
  $myPDO = new PDO('pgsql:host=127.0.0.1:5432;dbname=test', 'test', '');
} catch (\Throwable $th) {
  echo var_dump($th);
}

错误

这是我从 try/catch 中得到的响应.

Error

Here's the response I'm getting back from the try/catch.

object(PDOException)#2 (8) {
  ["message":protected]=>
  string(21) "could not find driver"
  ["string":"Exception":private]=>
  string(0) ""
  ["code":protected]=>
  int(0)
  ["file":protected]=>
  string(58) "/Users/test/index.php"
  ["line":protected]=>
  int(8)
  ["trace":"Exception":private]=>
  array(1) {
    [0]=>
    array(6) {
      ["file"]=>
      string(58) "/Users/test/index.php"
      ["line"]=>
      int(8)
      ["function"]=>
      string(11) "__construct"
      ["class"]=>
      string(3) "PDO"
      ["type"]=>
      string(2) "->"
      ["args"]=>
      array(3) {
        [0]=>
        string(46) "pgsql:host=127.0.0.1:5432;dbname=test"
        [1]=>
        string(13) "test"
        [2]=>
        string(0) ""
      }
    }
  }
  ["previous":"Exception":private]=>
  NULL
  ["errorInfo"]=>
  NULL
}

版本

我正在使用的软件版本列表.

Versions

A list of the software versions I'm using.

操作系统:macOS Big Sur

OS: macOS Big Sur

MAMP:6.2

PHP:7.3.21

php.ini 文件中,以下几行没有被注释掉.根据 PHP 信息,这是正确的 php.ini 文件.

In the php.ini file the following lines are uncommented. This is the correct php.ini file according to PHP Info.

extension_dir = "/Applications/MAMP/bin/php/php7.4.9/lib/php/extensions/no-debug-non-zts-20190902/"
...
extension=pgsql.so
extension=pdo_pgsql.so

推荐答案

Big Sur 上的默认 PHP 安装不包括所需的 PostgreSQL 驱动程序.我通过 Homebrew 安装了 PHP 7.4,其中包含此驱动程序:

The default PHP installation on Big Sur doesn't include the required PostgreSQL driver. I installed PHP 7.4 via Homebrew that does include this driver:

brew install php@7.4

确保将其设为默认的 PHP 版本.我正在使用 Oh My Zsh 所以我需要运行这个:

Make sure to make this the default PHP version. I'm using Oh My Zsh so I need to run this:

echo 'export PATH="/usr/local/opt/php@7.4/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/usr/local/opt/php@7.4/sbin:$PATH"' >> ~/.zshrc

您可以在此处找到 php.ini(以防您需要迁移配置):/usr/local/etc/php/7.4/php.ini

You can find php.ini (in case you need to migrate configuration) here: /usr/local/etc/php/7.4/php.ini

这篇关于更新到 macOS Big Sur 后,我无法使用 MAMP 连接到我的 PostgreSQL 数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆