声明
安装oci8扩展之前,需要确定的是你的oracle数据库是否在本地的主机上,如是远端访问oracle的话,那必须先安装Oracle Instant Client。
安装Oracle Instant Client
网盘下载
下载完成后,将看到三个包:
- oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
- oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm
- oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm
开始安装:
$ rpm -ivh oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
$ rpm -ivh oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm
$ rpm -ivh oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm
$ echo "/usr/lib/oracle/12.1/client64/lib" > /etc/ld.so.conf.d/oracle_client.conf
$ /sbin/ldconfig
安装oci8
安装前请注意版本,目前2.1.0是php7编译的,若php版本在5.2~5.6之间,请选择2.0.10版本
OCI_8网盘下载地址(如链接失效可用此地址下载)
开始安装:
$ wget http://pecl.php.net/get/oci8-2.0.10.tgz
$ tar -xf oci8-2.0.10.tgz
$ cd oci8-2.0.10
$ phpize
$ ./configure --with-oci8=shared,instantclient,/usr/lib/oracle/12.1/client64/lib --with-php-config=/usr/local/php/bin/php-config
$ make
$ make test
$ make install
配置文件
oci8安装成功后,会在/usr/local/php/lib/extensions/no-debug-non-zts-20121212/目录下生成oci8.so文件 然后在php.ini中添加extension=oci8.so
配置,重启php后执行php -m后查看扩展是否加载
可能遇到的错误
初次使用oci8链接oracle时,遇见这个错误:
ORA-24408: could not generate unique server group name
解决办法,如下:
- 修改/etc/sysconfig/network,如果没有就创建一下,添加代码
HOSTNAME=你的主机名
- 修改/etx/hosts,添加代码
127.0.0.1 你的主机名
- service network restart 重启一下服务
如文章对您有帮助,请打开支付宝扫码领取红包,就当做对作者的支持,谢谢