由于之前安裝了postgresql數(shù)據(jù)庫斧账,但使用adminer連接時(shí)卻顯示php沒有安裝pdo_pgsql擴(kuò)展。所以只能自己再編譯了
環(huán)境
centos7: 內(nèi)核版本:3.10.0-693.el7.x86_64
php7.1.7: 使用lnmp1.4腳本用源碼進(jìn)行編譯獲得
編譯
找到之前l(fā)nmp腳本下載的php源碼包坟奥,解壓后找到pdo_pgsql擴(kuò)展目錄。
// 源碼包目錄
cd /root/lnmp/lnmp1.4/src
// 解壓后找到 ./php-71.7/ext 目錄税娜,里面是php的各種擴(kuò)展源碼
cd ./php-71.7/ext/pdo_pgsql
// 在該源碼目錄下使用phpize工具
// phpize官方文檔:http://php.net/manual/zh/install.pecl.phpize.php
phpize
// 輸出結(jié)果類似
Configuring for:
PHP Api Version: 20160303
Zend Module Api No: 20160303
Zend Extension Api No: 320160303
// 配置編譯件甥,--with-php-config參數(shù)為php-config的文件目錄,--with-pdo-pgsql參數(shù)為pg_config目錄
// 官方文檔:http://php.net/manual/en/ref.pdo-pgsql.php
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-pgsql=/usr/pgsql-10/bin/
// 配置時(shí)可能需要安裝libpq插件
yum install libpqxx-dev
// 安裝完libpqxx-dev插件后孽锥,重新配置嚼黔,成功后進(jìn)行編譯
make&&make install
// 完成后细层,輸出類似如下
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/
配置php.ini
獲得pdo_pgsql擴(kuò)展的目錄后,修改php.ini文件唬涧〗褚眨可以直接在文件結(jié)尾處添加擴(kuò)展配置。
// 獲得php.ini目錄
php --ini
// 修改文件爵卒,添加配置語句
// extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/pdo_pgsql.so
vim /usr/local/php/etc/php.ini
// 重啟php
lnmp php-fpm restart
// 查看已安裝的擴(kuò)展
php -m