PHP下的Oracle客户端扩展(OCI8)安装教程 |
最近的项目需要用php访问oracle数据库,不得不在linux下给php安装oci8扩展 。php也可以使用pdo访问oracle数据库,但还是需要安装客户端 。 首先到oracle官网的这个页面下载相关的文件,注意要连数据库服务器的版本,一定要对应,否则安装成功也会连不上,同时也要区分32位、64位服务器,比如我要连的数据库服务器是oracle10.2.0.4,64位主机,那么我要下载下面三个文件: 复制代码 代码如下: oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm oracle-instantclient-sqlplus-10.2.0.4-1.x86_64.rpm 1.用以下命令安装 复制代码 代码如下: # rpm -ivh oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm oracle-instantclient-sqlplus-10.2.0.4-1.x86_64.rpm 2.安装OCI8 PHP扩展 复制代码 代码如下: # yum install libaio # cd ' # wget http://pecl.php.net/get/oci8-1.3.5.tgz 3.然后执行命令 复制代码 代码如下: # tar zxvf oci8-1.3.5.tgz # cd oci8-1.3.5/ # /usr/local/php5/bin/phpize CFLAGS=/usr/lib/oracle/11.2/client64/ CXXFLAGS=/usr/lib/oracle/11.2/client64/ # ./configure --with-php-config=/usr/local/php5/bin/php-config --with-oci8=instantclient,/usr/lib/oracle/11.2/client64/lib/ # make # make install(这里多运行几次,直到出现如下提示) [root@webserver02 oci8-1.3.5]# make install /bin/sh /root/oci8-1.3.5/libtool --mode=install cp ./oci8.la /root/oci8-1.3.5/modules cp ./.libs/oci8.so /root/oci8-1.3.5/modules/oci8.so cp ./.libs/oci8.lai /root/oci8-1.3.5/modules/oci8.la PATH="$PATH:/sbin" ldconfig -n /root/oci8-1.3.5/modules ---------------------------------------------------------------------- Libraries have been installed in: /root/oci8-1.3.5/modules If you ever happen to want to link against installed libraries See any operating system documentation about shared libraries for 4.创建ext目录 复制代码 代码如下: # mkdir ext/ 把oci8.so文件拷贝到php.ini 的ext目录里面 复制代码 代码如下: # cp /root/oci8-1.3.5/modules/oci8.so /usr/local/php5/lib/ext/
5.在php.ini里面加上extension=oci8.so 如下: 复制代码 代码如下: extension_dir = "/usr/local/php5/lib/ext" extension = "oci8.so" session.save_path = "/tmp/php" oci8.privileged_connect = on 重启apache服务: 复制代码 代码如下: /usr/local/apache2/bin/apachectl stop /usr/local/apache2/bin/apachectl start 刷新测试页面 。发现oci8出现了,则大功告成. |