LINUX服务器下安装PHP OCI及PDP_OCI扩展连接ORACLE数据库

首先吐槽一下 linux,我不太擅长使用 linux,因为这系统操作也太不友好了,尤其是对于我这种程序猿,但是不可否认 linux 系统确实比较稳定,一旦搭建好环境,出错的概率还是比较小的。下面我将以一个初学者的角度在全新 linux 服务器上安装 PHP OCI 扩展。


PHP 连接 ORACEL 的机制

简单说,当 PHP 发起数据库连接时首先调用 PHP OCI 或 PDO_OCI 扩展模块,通过该模块调取ORACLE客户端,再通过客户端连接数据库。
所以这里涉及到两方面的安装,一是需要安装PHP模块,二是需要安装ORACLE客户端,然后进行相关配置后即可。

安装 PHP OCI 及 PDO_OCI

大家可以参考这篇文章进行安装PHP 5.3 连接 Oracle 的客户端及 PDO_OCI 模块安装 感谢作者,我就不重复造轮子了。

文章里和我所安装的 ORACLE 客户端一样,都是 ORACLE-11.2 版本,注意!两个 ORACLE 客户端文件都要安装。
另外,在编译 PHP 扩展时如果提示 ./configure 错误,则看一下下载的 PHP 扩展包中是否有 configure 文件,如果没有需要用phpize来扩展,在扩展文件夹内执行: phpize 得到类似如下信息:

[root@jinniu-test3 pdo_oci]# /alidata/server/php/bin/phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626

如果编译的时候碰到了下面的问题

pdo_oci.c:34: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘pdo_oci_functions’

在pdo_oci.c文件中将 function_entry 改成 zend_function_entry 再进行编译安装即可。

其它的坑我还没遇到,希望可以帮助到小白,^_^

你可能感兴趣的:(php,oracle,pdo,oci8,linux)