Ubuntu下PHP5.5安装PDO_OCI组件

先说基本的配置

  • Ubuntu 14.04
  • Apache 2.4.7
  • PHP 5.5.9

开始安装

  1. 安装必要工具

sudo apt-get update; sudo apt-get install php5-dev unzip

  1. 下载 oracle instant client
    下载地址:oracle instant client 需要下载basic和sdk两个包
  2. 配置oracle instant client
    1). 设置client安装目录

    $sudo mkdir /opt/oracle
    $sudo cp ~/*.zip /opt/oracle
    $cp /opt/oracle
    $sudo unzip ./*.zip
    $sudo mv instantclient_12_1 instantclient

2). 配置instantclient
> $sudo ln -s libclntsh.so.12.1 libclntsh.so
> $sudo ln -s libocci.so.12.1 libocci.so
> $sudo export ORACLE_HOME=/opt/oracle/instantclient

3). 添加库的路径
> $cd /etc/ld.so.conf.d
> $sudo vi liboci.conf #添加一行:/opt/oracle/instantclient
> $sudo ldconfig

  1. 下载php-5.5.9源码并解压

    $cd ~
    $wget http://museum.php.net/php5/php-5.5.9.tar.gz
    $gunzip -d php-5.5.9.tar.gz
    $tar -zxvf php-5.5.9.tar

  2. 安装oci8、pdo、pdo_oci

    $cd php-5.5.9/ext/ #这里可以看到PHP的组件,将要安装的三个也在其中

    # 安装oci8
    $cd oci8
    $phpize
    $./configure --with-oci8=instantclient,/opt/oracle/instantclient,12.1
    $make
    $sudo make install
    # 在输出的内容中可以看到生成的.so文件路径:/usr/lib/php5/20121212(可能略有变化)

    # 安装pdo
    $cd ../pdo/
    $phpize
    $./configure
    $make
    $sudo make install # 生成的.so文件和oci8.so路径相同

    # 安装pdo_oci
    $cd ../pdo_oci/
    $phpize
    $./configure --with-pdo-oci8=instantclient,/opt/oracle/instantclient,12.1
    $make
    $sudo make install

  3. 配置php.init
    在/etc/php5/cli/php.init和/etc/php5/apache2/php.ini两个文件的末尾,均添加以下三行:

extension=pdo.so
extension=oci8.so
extension=pdo_oci.so

  1. 重启apache服务

$sudo service apache2 restart
$php -m #查看php安装的模块信息中是否有这三个


拓展

Why you Should be using PHP's PDO for Database Access


你可能感兴趣的:(Ubuntu下PHP5.5安装PDO_OCI组件)