参考文件
http://www.linuxeden.com/html/netadmin/20111020/115199.html
一、 准备文件
1) oracle客户端rpm包, http://www.oracle.com/technology/tech/oci/instantclient/instantclient.html 下载# oracle-instantclient11.2-basic-11.2.0.1.0-1.x86_64.rpm
# oracle-instantclient11.2-devel-11.2.0.1.0-1.x86_64.rpm
# oracle-instantclient11.2-sqlplus-11.2.0.1.0-1.x86_64.rpm
2) pdo_oci 与 oci8 包在 http://pecl.php.net/package/PDO_OCI ,和 http://pecl.php.net/package/oci8 下载
# oci8-1.4.7.tgz //
# PDO_OCI-1.0.tgz //二、安装oracle客户端
# rpm -ivh oracle-intstant*.rpm
三、配置oracle
1) 添加动态装载器
修改/etc/ld.so.conf文件或在ld.so.conf.d文件夹下添加oracle-x86_64.conf文件,写入如下你安装的oracle客户端的lib路径:
/usr/lib/oracle/11.2/client64/lib/
2) 64位系统需要创建32位的软链接
# ln -s /usr/lib/oracle/11.2/client64 /usr/lib/oracle/11.2/client
# ln -s /usr/include/oracle/11.2/client64 /usr/include/oracle/11.2/client
3) 修改/etc/profile文件,最后加入如下内容:
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64:$LD_LIBRARY_PATH
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
# source /etc/profile //使之生效
四、安装pdo_oci
1)解压,进入文件夹,不写了
2) pdo_oci不支持11.2,做一个假的ln,骗过编译
# ln -s /usr/include/oracle/11.2 /usr/include/oracle/10.2.0.1
# ln -s /usr/lib/oracle/11.2 /usr/lib/oracle/10.2.0.1
3) 用phpize来扩展,文件夹内执行: phpize
4) 编译
# ./configure --with-php-config=/usr/bin/php-config -- with-pdo-oci =instantclient,/usr,10.2.0.1
# make && make install
在/etc/php.d/文件夹下新建一个pdo_oci.ini,内容还是extension=pdo_oci.so
五、安装oci8
基本一样,解压,进入,phpize,编译即可,不需要转换,注意参数是--with-oci8,参考文章写错了。
# ./configure --with-php-config=/usr/bin/php-config -- with-oci8 =instantclient,/usr/lib/oracle/11.2/client64/lib
# make && make install
在/etc/php.d/文件夹下新建一个oci8.ini,内容还是extension=oci8.so