PHP安装oracle扩展

PHP安装oracle扩展

官方参考文档:https://www.php.net/manual/en/oci8.installation.php

说明

  • 安装前先看安装的第五条
  • 应扩展名称:oci8、pdo_oci(pdo连接使用)
  • 安装相应oracle版本的客户端

安装

  • 下载响应php版本的oracle扩展包(也可以直接在php源码里的ext目录下找)

    1.安装oci8

    # 这里以从PHP源码包里的扩展为例
    cd php-7.2.6/ext/oci8
    phpize
    # 指定客户端库的位置
    ./configure --with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client64/lib/ --with-php-config=/usr/local/php/bin/php-config
    make install
    

    2.安装pdo_oci

    cd php-7.2.6/ext/pdo_oci
    phpize
    # 指定客户端库的位置
    ./configure --with-pdo_oci=shared,instantclient,/usr/lib/oracle/11.2/client64/lib/ --with-php-config=/usr/local/php/bin/php-config
    make install
    

    3.修改php.ini

    vim /usr/local/php/etc/php.ini
    # 加入
    extension=pdo_oci.so
    extension=oci8.so
    

    4.此时扩展安装完成,但是因oracle未安装,因此重启php-fpm会报错

    5.安装orale客户端(应最先安装,否则不知道,/usr/lib/oracle/11.2/client64/lib/ 的来源)

    下载地址: https://www.oracle.com/technetwork/cn/database/features/instant-client/index-092699-zhs.html

    # 下载客户端要注册oracle账号(不做说明)
    #如: oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
    yum install -y oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
    # whereis oracle (安装PHP扩展的路径)
    whereis oracle
    

重启php-fpm

systemctl restart php-fpm