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

在macOS Ventura 13.1上安装pdo_pgsql与pgsql扩展的问题求助

解决PHP 8.2无法加载pdo_pgsql和pgsql扩展的问题

以下是不同操作系统下的正确安装步骤,确保能正常连接PostgreSQL:

一、Debian/Ubuntu 系列系统

  • 执行命令安装依赖和扩展包:
    sudo apt update
    sudo apt install php8.2-pgsql
    
  • 重启PHP相关服务(根据你的运行环境选择):
    # 用PHP-FPM的情况
    sudo systemctl restart php8.2-fpm
    # 用Apache的情况
    sudo systemctl restart apache2
    
  • 验证扩展:执行 php -m,输出列表中应能看到pdo_pgsql和pgsql

二、CentOS/RHEL/Rocky Linux 系列系统

  • 先配置必要的软件仓库(未安装的话):
    sudo dnf install epel-release
    sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
    sudo dnf module enable php:remi-8.2
    
  • 安装PostgreSQL扩展:
    sudo dnf install php-pgsql
    
  • 重启服务:
    # PHP-FPM环境
    sudo systemctl restart php-fpm
    # Apache环境
    sudo systemctl restart httpd
    
  • 验证扩展:执行 php -m 确认扩展已加载

三、Windows 系统

  • 确认PHP包的类型(线程安全TS/非线程安全NTS),扩展文件必须和PHP版本、TS/NTS、x86/x64完全匹配
  • 检查PHP安装目录下的ext文件夹,确保存在php_pdo_pgsql.dll和php_pgsql.dll,没有的话需从PHP官方渠道下载对应版本的扩展包,将文件放入ext目录
  • 打开php.ini文件,确保以下两行没有被注释(去掉行首的;):
    extension=pdo_pgsql
    extension=pgsql
    
  • 重启Web服务器(Apache或Nginx+PHP-FPM)
  • 验证扩展:打开命令行执行 php -m,确认扩展存在

四、Laravel 连接验证

扩展安装完成后,修改项目根目录的.env文件配置PostgreSQL信息:

DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=你的数据库名称
DB_USERNAME=数据库用户名
DB_PASSWORD=数据库密码

执行 php artisan migrate 测试数据库连接是否正常

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 21:45:47