centos7 php oci,linux centos centos7 安装oci8和pdo_oci扩展

linux centos7 安装oci8和pdo_oci扩展

一、基本环境

1、centos7_64+Apache/2.4.7+PHP5.3.27;

2、oracle11.2(远程)

3、设置oracle11.2允许远程访问(属于oracle设置的范畴)

4、设置防火墙允许访问

5、以下步骤以root身份执行

二、安装oci8扩展

1、到oracle官网下载:

oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm和oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm(注:根据操作系统和数据库版本选择不同的版本)

2、安装以上两个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

以上的安装路径为:

/usr/lib/oracle/11.2/client64/lib 和/usr/include/oracle/11.2/client64.

还可能用到以下几条命令:

rpm -qpl 可以查看rpm包会在哪些路径安装文件

rpm -qa | grep oracle //查看oracle是否安装

rpm -qa //查看所有已安装的人rpm包

rpm -e oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm //卸载已安装的rpm包

rpm -ivh --force oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm //强制安装rpm包

3、到php官网下载oci8-2.0.8.tgz(不能使用高版本,否则以下可能会报错)并解压为oci8-2.0.8文件夹

4、在oci8-2.0.8文件夹中执行

# phpize(此处为phpize命令的全路径)

# ./configure --with-oci8=instantclient,/usr/lib/oracle/11.2/client64/lib ----with-php-config=php-config(此处为php-config命令的完整路径)

# make && make install

执行成功后,界面会输出oci8.so的完整路径

5、在php.ini文件中添加

extension=oci8.so(此处应填写oci8.so的完整路径,此路径在上条命令中输出)

6、重启apache

httpd -k restart(此处为httpd的全路径)

三、安装pdo_oci扩展

先执行上述1、2步骤;

3、执行#vi /etc/ld.so.conf

/usr/lib/oracle/11.2/client64/lib/ //加入此行,保存退出

4、执行

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

64位系统需要创建32位的软链接(这里可能是一个遗留bug)

5、执行vi 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"

6、执行

#source /etc/profile

7、执行

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

注:防止pdo_oci对oracle11支持不足

8、官网下载php-5.3.27.tar.gz,解压后将其中的pdo_oci文件夹复制到php的扩展目录中(如主目录/ext/pdo中)

9、在“主目录/ext/pdo”中执行:

# phpize(此处为phpize命令的全路径)

# ./configure --with-pdo-oci=instantclient,/usr,11.2 --with-php-config=php-config(此处为php-config命令的完整路径)

# make && make install

执行成功后,界面会输出pdo_oci.so的完整路径

10、在php.ini文件中添加

extension=pdo_oci.so(此处应填写pdo_oci.so的完整路径,此路径在上条命令中输出)

11、重启apache

httpd -k restart(此处为httpd的全路径)

四、测试是否安装成功

1、执行./php -i |grep oci(此处为php命令的全路径),输出如下证明成功:

oci8

......

PDO drivers => mysql, sqlite, sqlite2, oci

2、也可以使用php脚本测试

测试pdo_oci:$pdo= new PDO('oci:dbname=//oracle的ip地址:1521/数据库名;charset=utf8',用户名,密码);

测试oci8:$conn = oci_connect(用户名,密码, oracle的ip地址:1521/数据库名);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值