五环小胖子的博客

PHP安装OCI8扩展

2016-01-07
Ryan
php

前瞻

安装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版本

以下是安装脚本:

$ 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=/path/to/php/bin/php-config
$ make
$ make test
$ make install

配置

oci8安装成功后,会在/path/to/php/lib/extensions/no-debug-non-zts-20121212/目录下生成oci8.so文件 然后在php.ini中添加extension=oci8.so配置 执行php -m后查看扩展是否加载

使用oci8链接错误

初次使用oci8链接oracle时,遇见这个错误:

ORA-24408: could not generate unique server group name

google了很久,找到了解决办法,如下:

  1. 修改/etc/sysconfig/network,如果没有就创建一下,添加代码HOSTNAME=你的主机名
  2. 修改/etx/hosts,添加代码127.0.0.1 你的主机名
  3. service network restart 重启一下服务

注意:操作系统为centos,查看主机名的命令为hostname

后记

2016年的第一篇博客,做个简单的记录,然后就是,2016加油!!!


Similar Posts

下一篇 我的vim配置

Outline