Mac环境下PHP编译安装oci8拓展

php版本5.6.33,注意oci8的版本

一、安装oracle客户端

1.下载主要文件官方下载地址

instantclient-basic-macos.x64-11.2.0.4.0.zip​

instantclient-sdk-macos.x64-11.2.0.4.0.zip

instantclient-sqlplus-macos.x64-11.2.0.4.0.zip (这个可以不下载,感觉可以不需要这个)

2.解压文件

创建目录/usr/local/instantclient_11_2

将basic解压的内容全部复制到此目录,将sdk解压后的sdk文件夹复制到此目录

Mac环境下PHP编译安装oci8拓展_第1张图片

3.创建符号链接

#cd /usr/local/instantclient_11_2

sudo ln -s /usr/local/instantclient_11_2/sdk/include/*.h /usr/local/include/
sudo ln -s /usr/local/instantclient_11_2/sqlplus /usr/local/bin/
sudo ln -s /usr/local/instantclient_11_2/*.dylib /usr/local/lib/
sudo ln -s /usr/local/instantclient_11_2/*.dylib.11.1 /usr/local/lib/

sudo ln -s /usr/local/lib/libclntsh.dylib.11.1 /usr/local/lib/libclntsh.dylib

测试 /usr/local/bin/sqlplus

4.一切就绪,编译安装

下载oci8-2.0.8.tgz  https://pecl.php.net/package/oci8

保存到/usr/local/src目录下,加压oci8-2.0.8.tgz到oci8-2.0.8目录,

#cd /usr/local/src/oci8-2.0.8

#sudo /usr/local/php5/bin/phpize

#下需要注意php-config和客户端的路径不同

sudo ./configure --with-php-config=/usr/local/php5/bin/php-config --with-oci8=shared,instantclient,/usr/local/instantclient_11_2

#sudo make

#sudo make test #可能会出现了fail和bug,没有管它继续安装了,最后oci8还是成功安装了

#sudo make install​


5.保存oci8.so

我根据上面步骤所生成的拓展文件在/usr/local/php5/lib/php/extensions/no-debug-non-zts-20131226/​。将其复制到当前使用的php拓展目录,我的是/usr/local/php5/lib/php/extensions/no-debug-non-zts-20131226/​

配置php.ini在extension的段落加上

extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-non-zts-20131226/"

extension = "oci8.so"

重启apache,查看phpinfo,​出现OCI8 Support enable即安装成功





你可能感兴趣的:(Apache,Web服务器,Oracle)