加入收藏 | 设为首页 | 会员中心 | 我要投稿 漯河站长网 (https://www.0395zz.cn/)- 云服务器、混合云存储、网络、内容创作、云渲染!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法

发布时间:2022-07-15 12:33:31 所属栏目:PHP教程 来源:互联网
导读:本文实例讲述了PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法,分享给大家供大家参考,具体如下: php连接oracle数据库虽然不是最佳拍档,但组内开发确实有这样需求,如果没有参考合适的文档,这个过程还是挺折磨人的,下面是一个记录,原型是国外的一篇博
  本文实例讲述了PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法,分享给大家供大家参考,具体如下:
 
  php连接oracle数据库虽然不是最佳拍档,但组内开发确实有这样需求,如果没有参考合适的文档,这个过程还是挺折磨人的,下面是一个记录,原型是国外的一篇博客 Installing PDO_OCI and OCI8 PHP extensions on CentOS 6.4 64bit 。
 
  假设你已经安装好php的环境,php版本为5.3,要连接的oracle服务器是 11g R2,操作系统版本CentOS 6.4 x86_64。如果没有安装php,可以通过以下命令安装:
 
  # yum install php php-pdo
 
  # yum install php-devel php-pear php-fpm php-gd php-ldap
 
  php-mbstring php-xml php-xmlrpc php- zlib zlib-devel bc libaio glibc
 
  假如web服务器使用apache。
 
  1. 安装InstantClient
 
  instantclient是oracle的连接数据库的简单客户端,不用安装一个500Moracle客户端就可以连接oracle数据库,有windows和linux版本。从 这里 选择需要的版本下载,只需Basic和Devel两个rpm包。
 
  安装
 
  # rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
 
  # rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
 
  软链接
 
  # ln -s /usr/include/oracle/11.2/client64 /usr/include/oracle/11.2/client
 
  # ln -s /usr/lib/oracle/11.2/client64 /usr/lib/oracle/11.2/client
 
  64位系统需要创建32位的软链接,这里可能是一个遗留bug,不然后面编译会出问题。
 
  接下来还要让系统能够找到oracle客户端的库文件,修改LD_LIBRARY_PATH:
 
  # vi /etc/profile.d/oracle.sh
 
  export ORACLE_HOME=/usr/lib/oracle/11.2/client64
 
  export LD_LIBRARY_PATH=$ORACLE_HOME/lib
 
  执行source /etc/profile.d/oracle.sh使环境变量生效。
 
  2. 安装PDO_OCI
 
  在连接互联网的情况下,通过pecl在线安装php的扩展非常简单,参考 How to install oracle instantclient and pdo_oci on ubuntu machine 。
 
  从https://pecl.php.net/package/PDO_OCI下载 PDO_OCI-1.0.tgz 源文件。
 
  # wget https://pecl.php.net/get/PDO_OCI-1.0.tgz
 
  # tar -xvf PDO_OCI-1.0.tgz
 
  # cd PDO_OCI-1.0
 
  由于PDO_OCI很久没有更新,所以下面需要编辑ODI_OCI-1.0文件夹里的config.m4文件来让它支持11g:
 
  # 在第10行左右找到与下面类似的代码,添加这两行:
 
  elif test -f $PDO_OCI_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.11.2; then
 
  PDO_OCI_VERSION=11.2
 
  # 在第101行左右添加这几行:
 
  11.2)
 
  PHP_ADD_LIBRARY(clntsh, 1, PDO_OCI_SHARED_LIBADD)
 
  ;;
 
  编译安装pdo_oci扩展:(安装完成后可在 /usr/lib64/php/modules/pdo_oci.so 找到这个模块)
 
  $ phpize
  $ ./configure --with-pdo-oci=instantclient,/usr,11.2
  $ make
  $ sudo make install
  要启用这个扩展,在/etc/php.d/下新建一个pdo_oci.ini文件,内容:
 
  extension=pdo_oci.so
 
  验证安装成功:
 
  # php -i|grep oci
 
  看到类似下面的内容则安装成功:
 
  /etc/php.d/pdo_oci.ini,
 
  PDO drivers => oci, sqlite

(编辑:漯河站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读