写在前面:
本文讲述在linux环境中安装php扩展
- OS版本:CentOS 7
- php环境:lnmp1.9一键安装环境
一、Oracle 扩展
1、准备工作
下载Oracle客户端包
按照自己需要的版本进行下载,该文以 18.5 版本进行说明
官网地址
需要下载的包
上传服务器
登录自己的服务器,并创建以下文件夹
mkdir -p /opt/oracle
将准备好的扩展包,上传到该目录下
2、安装扩展
安装Oracle客户端
解压
unzip instantclient-basic-linux.x64-18.5.0.0.0dbru.zip
unzip instantclient-sdk-linux.x64-18.5.0.0.0dbru.zip
basic 包解压完成后,会生成一个新的文件夹 instantclient_18_5
如图:
sdk 包解压完成后,会在相同目录中多出一个 sdk 的文件夹
如图:
创建必要的软连接
可以先查看下是否已经存在以下软连接
如果存在,可跳过此步骤
ln -s /opt/oracle/instantclient_18_5/libclntsh.so.18.1 /opt/oracle/instantclient_18_5/libclntsh.so
ln -s /opt/oracle/instantclient_18_5/libocci.so.18.1 /opt/oracle/instantclient_18_5/libocci.so
安装 pdo_oci 扩展
以 lnmp1.9 一键安装包环境进行说明
lnmp1.9 源文件目录为
/usr/local/src/lnmp1.9php版本:7.4.30
找到 php 源文件包
cd /usr/local/src/lnmp1.9/src
找到 php-7.4.30.tar.bz2,并解压
tar -xjvf php-7.4.30.tar.bz2
进入到源码包扩展目录
cd /usr/local/src/lnmp1.9/src/php-7.4.30/ext/pdo_oci
依次执行源码编译三件套
phpize
./configure --with-pdo-oci=instantclient,/opt/oracle/instantclient_18_5 --with-php-config=/usr/local/php/bin/php-config
make && make install
成功后,可以查看 php 扩展目录下是否存在 pdo_oci.so 扩展
修改 php.ini 配置文件,追加 pdo_oci.so 扩展
echo 'extension=pdo_oci.so' >> /usr/local/php/etc/php.ini
重启服务
lnmp restart 或者 reboot
查看已安装的 php 扩展
php -m
二、Sqlserver 扩展
1、准备工作
下载扩展包
按照自己需要的版本进行下载,该文以 5.10 版本进行说明
官网地址
需要下载的包
上传服务器
登录自己的服务器,并创建以下文件夹
mkdir -p /opt/sqlserver
将准备好的扩展包,上传到该目录下
2、安装扩展
安装 ODBC 驱动
添加安装源到本机
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo
安装 unixODBC-devel 包
yum install -y unixODBC-devel
安装 msodbcsql17 包
ACCEPT_EULA=Y yum install -y msodbcsql17
安装 mssql-tools 包
ACCEPT_EULA=Y yum install -y mssql-tools
查看 ODBC 驱动
cat /etc/odbcinst.ini
存在如图所示的信息,表示安装成功。
安装 pdo_sqlsrv 扩展
进入扩展包目录
cd /opt/sqlserver
解压
tar -zxvf pdo_sqlsrv-5.10.0.tgz
执行源码安装三件套
cd /opt/sqlserver/pdo_sqlsrv-5.10.0
phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
成功后,可以查看 php 扩展目录下是否存在 pdo_sqlsrv.so 扩展
修改 php.ini 配置文件,追加 pdo_oci.so 扩展
echo 'extension=pdo_sqlsrv.so' >> /usr/local/php/etc/php.ini
重启服务
lnmp restart 或者 reboot
查看已安装的 php 扩展
php -m