PHP下的Oracle客户端扩展(OCI8)安装教程


Posted in PHP onSeptember 10, 2014

最近的项目需要用php访问oracle数据库,不得不在linux下给php安装oci8扩展。php也可以使用pdo访问oracle数据库,但还是需要安装客户端。

首先到oracle官网的这个页面下载相关的文件,注意要连数据库服务器的版本,一定要对应,否则安装成功也会连不上,同时也要区分32位、64位服务器,比如我要连的数据库服务器是oracle10.2.0.4,64位主机,那么我要下载下面三个文件:

oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm

oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm

oracle-instantclient-sqlplus-10.2.0.4-1.x86_64.rpm

1.用以下命令安装

# rpm -ivh oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm    oracle-instantclient-sqlplus-10.2.0.4-1.x86_64.rpm

2.安装OCI8 PHP扩展

# yum install libaio

# cd ~

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

3.然后执行命令

# tar zxvf oci8-1.3.5.tgz

# cd oci8-1.3.5/

# /usr/local/php5/bin/phpize  CFLAGS=/usr/lib/oracle/11.2/client64/ CXXFLAGS=/usr/lib/oracle/11.2/client64/

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

# make

# make install(这里多运行几次,直到出现如下提示)

 

[root@webserver02 oci8-1.3.5]# make install

/bin/sh /root/oci8-1.3.5/libtool --mode=install cp ./oci8.la /root/oci8-1.3.5/modules

cp ./.libs/oci8.so /root/oci8-1.3.5/modules/oci8.so

cp ./.libs/oci8.lai /root/oci8-1.3.5/modules/oci8.la

PATH="$PATH:/sbin" ldconfig -n /root/oci8-1.3.5/modules

----------------------------------------------------------------------

Libraries have been installed in:

   /root/oci8-1.3.5/modules
If you ever happen to want to link against installed libraries

in a given directory, LIBDIR, you must either use libtool, and

specify the full pathname of the library, or use the `-LLIBDIR'

flag during linking and do at least one of the following:

   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable

     during execution

   - add LIBDIR to the `LD_RUN_PATH' environment variable

     during linking

   - use the `-Wl,--rpath -Wl,LIBDIR' linker flag

   - have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for

more information, such as the ld(1) and ld.so(8) manual pages.

----------------------------------------------------------------------

Installing shared extensions:     /usr/local/php5/lib/php/extensions/no-debug-zts-20090626/

# cd /usr/local/php5/lib

4.创建ext目录

# mkdir ext/

把oci8.so文件拷贝到php.ini 的ext目录里面
# cp /root/oci8-1.3.5/modules/oci8.so /usr/local/php5/lib/ext/

5.在php.ini里面加上extension=oci8.so

如下:

extension_dir = "/usr/local/php5/lib/ext"

extension = "oci8.so"

session.save_path = "/tmp/php"

oci8.privileged_connect = on

重启apache服务:

/usr/local/apache2/bin/apachectl stop

/usr/local/apache2/bin/apachectl start

刷新测试页面。发现oci8出现了,则大功告成.

PHP 相关文章推荐
用PHP实现小型站点广告管理
Oct 09 PHP
php 3行代码的分页算法(求起始页和结束页)
Oct 21 PHP
通达OA公共代码 php常用检测函数
Dec 14 PHP
php创建基本身份认证站点的方法详解
Jun 08 PHP
网页上facebook分享功能具体实现
Jan 26 PHP
PHP图片等比例缩放生成缩略图函数分享
Jun 10 PHP
thinkphp的URL路由规则与配置实例
Nov 26 PHP
php安装swoole扩展的方法
Mar 19 PHP
PHP经典面试题集锦
Mar 19 PHP
php 反斜杠处理函数addslashes()和stripslashes()实例详解
Dec 25 PHP
php文件上传类的分享
Jul 06 PHP
2017年最好用的9个php开发工具推荐(超好用)
Oct 23 PHP
CentOS 6.3下安装PHP xcache扩展模块笔记
Sep 10 #PHP
PHP实现对站点内容外部链接的过滤方法
Sep 10 #PHP
php生成随机数的三种方法
Sep 10 #PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
Sep 10 #PHP
初识php MVC
Sep 10 #PHP
叫你如何修改Nginx与PHP的文件上传大小限制
Sep 10 #PHP
QQ互联一键登录审核不通过的解决方案
Sep 10 #PHP
You might like
php实现用于删除整个目录的递归函数
2015/03/16 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
2020/02/21 PHP
利用ASP发送和接收XML数据的处理方法与代码
2007/11/13 Javascript
分享20款好玩的jQuery游戏
2011/04/17 Javascript
js内存泄露的几种情况详细探讨
2013/05/31 Javascript
javascript学习笔记(四)function函数部分
2014/09/30 Javascript
js实现select组件的选择输入过滤代码
2014/10/14 Javascript
浅谈JavaScript数据类型及转换
2015/02/28 Javascript
JS实现左右拖动改变内容显示区域大小的方法
2015/10/13 Javascript
jQuery ajaxForm()的应用
2016/10/14 Javascript
js调用父框架函数与弹窗调用父页面函数的简单方法
2016/11/01 Javascript
ASP.NET jquery ajax传递参数的实例
2016/11/02 Javascript
JavaScript的数据类型转换原则(干货)
2018/03/15 Javascript
Vue+ElementUI 中级联选择器Bug问题的解决
2020/07/31 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
2020/11/10 Javascript
vue实现简易计算器功能
2021/01/20 Vue.js
[10:18]2018DOTA2国际邀请赛寻真——Fnatic能否笑到最后?
2018/08/14 DOTA
pip安装Python库时遇到的问题及解决方法
2017/11/23 Python
详解Python解决抓取内容乱码问题(decode和encode解码)
2019/03/29 Python
Python生成并下载文件后端代码实例
2020/08/31 Python
python压包的概念及实例详解
2021/02/17 Python
selenium+python自动化78-autoit参数化与批量上传功能的实现
2021/03/04 Python
澳大利亚当地最大的时装生产商:Cue
2018/08/06 全球购物
美国排名第一的泳池用品直接来源:In The Swim
2019/09/23 全球购物
数据库测试通常都包括哪些方面
2015/11/30 面试题
J2EE相关知识面试题
2013/08/26 面试题
绝对经典成功的大学生推荐信
2013/11/08 职场文书
认识深刻的检讨书
2014/02/16 职场文书
《蒲公英》教学反思
2014/02/28 职场文书
委托公证书范本
2014/04/03 职场文书
企业宣传标语
2014/06/09 职场文书
教师党员承诺书2015
2015/01/21 职场文书
公司员工培训管理制度
2015/08/04 职场文书
2016年领导干部正风肃纪心得体会
2015/10/09 职场文书
python opencv检测直线 cv2.HoughLinesP的实现
2021/06/18 Python
业余无线电通联Q语
2022/02/18 无线电