zoukankan      html  css  js  c++  java
  • php安装oci8和pdo_oci扩展实现连接oracle数据库

    PHP一般跟MySQL数据库搭配使用,但最近遇到一个需求需要实现PHP连接Oracle,了解到PHP可以通过pdo_oci和oci8扩展来连接Oracle,这里将安装的过程记录下来。

    安装环境:PHP7.2.18,Deepin15.10

    首先,安装oci8和pdo_oci扩展依赖的Oracle client。

    了解到需要连接的Oracle版本为11.2.0.4.0,在这里下载对应版本的Oracle client压缩包。

    instantclient-basic-linux.x64-11.2.0.4.0.zip

    instantclient-sdk-linux.x64-11.2.0.4.0.zip

    将上面的压缩包放入同一个目录中解压,这里放入/opt/oracle目录,然后解压,命令如下:

    cd /opt/oracle
    unzip instantclient-basic-linux.x64-11.2.0.4.0.zip
    unzip instantclient-sdk-linux.x64-11.2.0.4.0.zip

    将解压后的文件夹重命名

    mv instantclient_11_2 instantclient

    添加软连接

    cd instantclient
    ln -s libclntsh.so.11.1 libclntsh.so
    ln -s libocci.so.11.1 libocci.so

    安装 libaio 软件包。这在某些 Linux 版本中名为 libaio1,当前系统环境下软件包的名称为libaio1

    sudo apt-get install -y libaio1

    生成动态链接库系统缓存

    sudo sh -c "echo /opt/oracle/instantclient > 
          /etc/ld.so.conf.d/oracle-instantclient.conf"
    sudo ldconfig

     

    然后,编译安装oci8扩展和pdo_oci扩展

    PHP的oci8和pdo_oci扩展都已包含在PHP的源码扩展包目录中,所以首先从PHP的官方github仓库下载对应自己PHP版本的PHP源代码,这里是7.2.18,可通过克隆和下载压缩包的方式,我这里通过下载压缩包的方式,下载后放入/usr/local/src目录下解压,解压后的目录为/usr/local/src/php-7.2.18。注意:php、phpize、php-config都需要在PATH环境变量中找到。

    编译安装oci8扩展

    cp -r /usr/local/src/php-7.2.18/ext/oci8/ /tmp/
    cd /tmp/oci8
    phpize
    ./configure --with-oci8=instantclient,/opt/oracle/instantclient
    make
    sudo make install

    完成后,编辑php.ini文件,加入extension=oci8,运行php -m 命令查看有oci8表明安装成功。

    编译安装pdo_oci扩展

    cp -r /usr/local/src/php-7.2.18/ext/pdo_oci/ /tmp/
    cd /tmp/pdo_oci
    phpize
    ./configure --with-oci8=instantclient,/opt/oracle/instantclient,11.2.0.4.0
    make
    sudo make install

    完成后,编辑php.ini文件,加入extension=pdo_oci,运行php -m 命令查看有PDO_OCI表明安装成功。

  • 相关阅读:
    BZOJ1057:[ZJOI2007]棋盘制作——题解
    洛谷4147:玉蟾宫——题解
    洛谷1578:[WC2002]奶牛浴场——题解
    BZOJ1926:[SDOI2010]粟粟的书架——题解
    BZOJ3123:[SDOI2013]森林——题解
    BZOJ1834:[ZJOI2010]网络扩容——题解
    BZOJ2668:[CQOI2012]交换棋子——题解
    BZOJ1070:[SCOI2007]修车——题解
    BZOJ1877:[SDOI2009]晨跑——题解
    在阿里,我们如何管理测试环境
  • 原文地址:https://www.cnblogs.com/liyuchuan/p/10927017.html
Copyright © 2011-2022 走看看