Linux环境 php连接oracle11g数据库

1、环境:centos6、LNMP(linux环境都可以,跟服务器没啥大关系)

2、前期准备:弄清楚项目php的运行目录,php.ini的配置目录,php-config的运行目录

3、安装先知:步骤一=》安装oracle在linux环境的客户端,oracle-instantclient-basic

步骤二=》安装php连接oracle扩展,php-oci8

4、首先查看phpinfo(),是否已支持oci8扩展(查看php内核版本,这个很重要,命令:var_dump(12345678900),32位超过64亿显示float类型,64位显示int

5、安装步骤如下(仅以64位版本为例):

安装oracle-instantclient

下载地址:http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

分别下载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

放在/usr/packages/目录下,执行:

# cd /usr/packages/

# rpm -ivhoracle-instantclient*

此时会生成/usr/lib/oracle/11.2/client64/lib/目录。*注:下载对应数据库版本

(上面路径一定要去看看是否生成了,这很重要,路径名称可能不同,部分机器会生成/usr/lib/oracle/11.2/client/lib/目录)

二、修改/etc/ld.so.conf配置文件

追加以下内容--上面生成文件的路径,没有64的写client/lib/:

/usr/lib/oracle/11.2/client64/lib/

保存、退出,执行命令# ldconfig

三、安装oci8

下载最新的oci8组件

下载地址:http://pecl.php.net/package/oci8

下载oci-2.0.8.tgz

放在/usr/packages/目录下,依次执行:

# cd/usr/packages/

# tar -xvzfoci-2.0.8.tgz

# cd oci-2.0.8

#/usr/local/php/bin/phpize(用phpize生成configure配置文件,千万注意:phpize、php-config、instantclient目录一定要找对,这个需要自己去找

# ./configure--with-php-config=/usr/local/php/bin/php-config--with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client64/lib

# make &&make install

成功后会告诉你oci8.so已经成功放在以下目录(这仅仅是我的目录,你的可能不同);

四、配置PHP支持OCI扩展

修改php配置文件

# vi /usr/local/php/lib/php.ini文件

在extension项后追加以下内容

extension=oci8.so

五、重启Apache/nginx服务测试

# service apache2 restart【-- apache】

# service nginxd restart【-- nginx】

使用phpinfo()查看扩展是否开启,如果出现下图说明扩展开启

六、测试数据库连接

在站点根目录编写oracle.php

代码如下:

header("Content-type: text/html;charset=utf-8");

$conn= oci_connect('report', 'report','ip:port/service','zhs16gbk');

if($conn) {

echo"连接oracle成功!";

}else{

echo"连接oracle失败!";exit;

}

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180706G1BLTJ00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券