≡
  • 网络编程
  • 数据库
  • CMS技巧
  • 软件编程
  • PHP笔记
  • JavaScript
  • MySQL
位置:首页 > 网络编程 > PHP笔记

Linux下安装oracle客户端并配置php5.3的实现方法

人气:271 时间:2021-04-15

这篇文章主要为大家详细介绍了Linux下安装oracle客户端并配置php5.3的实现方法,具有一定的参考价值,可以用来参考一下。

感兴趣的小伙伴,下面一起跟随四海网的小玲来看看吧!

因项目需要在linux下进行php5.3的oracle客户端编译,简要介绍一下步骤及走过的弯路。

1.下载Oracle客户端程序包,其中包含OCI、OCCI和JDBC-OCI等相关文件。

1.1下载文件地址

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
根据操作系统的版本选择对应的软件,我需要的是X86_64选择
Instant Client for Linux x86-64

1.2需要下载的文件如下:

 

代码如下:



oracle-instantclient11.1-basic-11.1.0.7.0-1.x86_64.rpm

oracle-instantclient11.1-devel-11.1.0.7.0-1.x86_64.rpm

oracle-instantclient11.1-sqlplus-11.1.0.7.0-1.x86_64.rpm

 

需要强调的一点是这里需要注册一个oracle的账户才能正常下载。

2.安装Oracle客户端程序包。

将程序包上传到服务器指定目录里

 

代码如下:



chmod +x *.rpm

#给RPM包赋执行权限 

rpm -ivh oracle-instantclient11.1-basic-11.1.0.7.0-1.x86_64.rpm oracle-instantclient11.1-devel-11.1.0.7.0-1.x86_64.rpm oracle-instantclient11.1-sqlplus-11.1.0.7.0-1.x86_64.rpm

#安装RPM包 

echo "/usr/lib/oracle/11.1/client64/lib/" > /etc/ld.so.conf.d/oracle_client.conf

#将库路径加到默认加载中 

/sbin/ldconfig

#重新加载动态链接库

 

3.安装OCI8的php扩展(这里指定php的安装路径为/usr/local/webserver/php)

 

代码如下:



yum install libaio

#yum安装libaio库,libaio是Linux下的一个异步非阻塞接口,它提供了以异步非阻塞方式来读写文件的方式,读写效率比较高

wget http://pecl.php.net/get/oci8-1.4.10.tgz

#下载OCI扩展

tar zxvf oci8-1.4.10.tgz

#解压

cd oci8-1.4.10 

/usr/local/webserver/php/bin/phpize CFLAGS="-I/usr/lib/oracle/11.1/client64" CXXFLAGS="-I/usr/lib/oracle/11.1/client64"

#使用phpize准备 PHP 外挂模块的编译环境,会根据指定的环境变量生成编译时需要的makefile,phpize是属于php-devel的内容,所以centos下只要运行yum install php-devel进行安装即可

./configure –with-php-config=/usr/local/webserver/php/bin/php-config –with-oci8=/usr/lib/oracle/11.1/client64 

make 

make install

#编译,安装

 

需要强调的是make的时候会报错,显示各种找不到库文件,需要对makefile文件进行修改加入oralce的运行库地址
打开makefile,寻找INCLUDE,形式如下:
INCLUDES = -I/usr/local/php/include/php -I/usr/include/oracle/10.2.0.3/client
然后在末尾加上="-I/usr/lib/oracle/11.1/client64,然后重新make就会成功了。

4.修改PHP.ini(/usr/local/webserver/php/etc/php.ini)

在extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/"后增加一行:

代码如下:



extension = "oci8.so"

 

5.重启apache让OCI生效

6.在web目录下创建phpinfo.php文件在其中输入一下内容,并通过web访问

 

代码如下:



<?php

phpinfo();

?>

 

如果找到OCI8的部分就说明OCI安装正常了,如下图所示

接下来就能通过php访问oracle数据库了,需要注意的是php下Oracle的连接字符串

 

代码如下:



<?php

$username='***'; 

$passwd='***'; 

$protocol='TCP'; 

$SERVICE_NAME='***'; 

$ORACLE_SERVER_IP_ADDRESS='***.***.***.***'; 

$Port='1521′;

$db = "(DESCRIPTION=(ADDRESS_LIST = (ADDRESS = (PROTOCOL = $protocol)(HOST = $ORACLE_SERVER_IP_ADDRESS)(PORT = $Port)))(CONNECT_DATA=(SID=$SERVICE_NAME)))"; 

$conn = oci_connect($username,$passwd, $db); 

PutEnv("NLS_LANG=SIMPLIFIED CHINESE_CHINA.AL32UTF8"); 

if (!$conn) {

    $e = oci_error(); 

    print htmlentities($e['message']); 

    exit; 

}else { 

    echo "连接oracle成功!"; 

    return $conn; 

}

?>

 

本文来自:http://www.q1010.com/173/17761-0.html

注:关于Linux下安装oracle客户端并配置php5.3的实现方法的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。

关键词:

您可能感兴趣的文章

上一篇:PHP+jQuery 注册模块开发的功能实例
下一篇:PHP中构造函数和析构函数的简单示例
热门文章
  • PHP 写入WRITE编码为UTF8的文件示例
  • PHP 中文字符串截取函数示例:支持gb2312,gbk,big
  • PHP 简单留言板的制作示例
  • 解决Fatal error: Call to undefined function mb_convert_encoding() in错误问题
  • PHP语言基础(标记、注释、变量、数组、常量、函数)示例
  • php 生成迅雷链接的简单示例
  • php 获取短网址的实现方法
  • PHP 通用分页类的简单示例
  • PHP 使用文件方式导入导出整个MYSQL数据库的实现方法
  • php 获取MYSQL错误的简单示例
  • 最新文章
    • 解决PHP使用redis实现统计缓存MySQL压力的问题
    • php 简单的上传进度条的简单示例
    • php 给html中引用的js和css路径打上版本号的实现方法
    • php 实现计算年龄精准到年月日的实例
    • php+ajax无刷新分页的简单示例
    • 解决php+ajax无刷新上传图片的问题
    • 解决PHP生成HTML静态页面的问题
    • 解决PHP使用uniqid函数生成唯一ID的问题
    • 解决PHP防刷票的一些问题
    • 微信access_token的获取开发的实现方法

四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。