为postgres Ubuntu安装pdo

Ric*_*rez 42 postgresql pdo

我正在尝试为我的php安装启用pdo驱动程序,但是当我运行该命令时

./configure --prefix=/usr/local/webserver/php --with-apxs2=/usr/local/webserver/apache2/bin/apxs --enable-mbstring --enable-intl --with-icu-dir=/usr --with-pgsql=/usr/local/webserver/postgres --with-pdo-pgsql=/usr/local/webserver/postgres
Run Code Online (Sandbox Code Playgroud)

我明白了

"Unable to build the PDO PostgreSQL driver: libpq 7.4+ is required"
Run Code Online (Sandbox Code Playgroud)

我在该目录中安装postgresql

/usr/local/webserver/postgres
Run Code Online (Sandbox Code Playgroud)

我使用bin包并使用php 5.3安装了postgresql 9.0.4.1

小智 86

Pecl PDO包现已弃用.顺便说一下,debian包php5-pgsql现在既包括常规驱动程序也包含PDO驱动程序,所以只需:

apt-get install php-pgsql
Run Code Online (Sandbox Code Playgroud)

在站点可以使用Apache之前,还需要重新启动Apache:

sudo systemctl restart apache2
Run Code Online (Sandbox Code Playgroud)

  • 记得执行:`php5enmod pgsql`之后 (8认同)

wil*_*aks 24

请尝试使用打包的pecl版本(打包安装的优点是它们更容易升级):

apt-get install php5-dev
pecl install pdo
pecl install pdo_pgsql
Run Code Online (Sandbox Code Playgroud)

或者,如果您只需要PHP 的驱动程序,但它不必是PDO:

apt-get install php5-pgsql
Run Code Online (Sandbox Code Playgroud)

否则,该消息很可能意味着您需要安装更新的libpq软件包.您可以通过运行来检查您拥有的版本:

dpkg -s libpq-dev
Run Code Online (Sandbox Code Playgroud)


Dyl*_*rce 17

如果你正在使用ondrej/phpphp7.0 的精彩ubuntu存储库:

sudo apt-get install php7.0-pgsql
Run Code Online (Sandbox Code Playgroud)

对于ondrej/php带有php7.1的Ubuntu存储库:

sudo apt-get install php7.1-pgsql
Run Code Online (Sandbox Code Playgroud)

相同的存储库,但对于php5.6:

sudo apt-get install php5.6-pgsql
Run Code Online (Sandbox Code Playgroud)

简洁易记.我喜欢这个存储库.


Wil*_*ill 8

PostgreSQL的PDO驱动程序现在包含在debian软件包php5-dev中.使用Pecl的上述步骤不再有效.