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 相关文章推荐
攻克CakePHP系列三 表单数据增删改
Oct 22 PHP
在php和MySql中计算时间差的方法
Apr 22 PHP
如何用phpmyadmin设置mysql数据库用户的权限
Jan 09 PHP
php数组声明、遍历、数组全局变量使用小结
Jun 05 PHP
Linux编译升级php的详细方法
Nov 04 PHP
php实现设计模式中的单例模式详解
Oct 11 PHP
php计算整个目录大小的方法
Jun 01 PHP
如何利用http协议发布博客园博文评论
Aug 03 PHP
php制作简单模版引擎
Apr 07 PHP
Yii核心验证器api详解
Nov 23 PHP
基于php流程控制语句和循环控制语句(讲解)
Oct 23 PHP
Laravel框架生命周期与原理分析
Jun 12 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
dedecms系统的广告设置代码 基础版本
2010/04/09 PHP
Laravel SQL语句记录方式(推荐)
2016/05/26 PHP
微信支付开发交易通知实例
2016/07/12 PHP
实例讲解PHP中使用命名空间
2019/01/27 PHP
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
jQuery滚动加载图片效果的实现
2013/03/06 Javascript
JavaScript中的公有、私有、特权和静态成员用法分析
2014/11/20 Javascript
node.js中的http.response.setHeader方法使用说明
2014/12/14 Javascript
分享2个jQuery插件--jquery.fileupload与artdialog
2014/12/26 Javascript
Underscore.js 1.3.3 中文注释翻译说明
2015/06/25 Javascript
跟我学习javascript创建对象(类)的8种方法
2015/11/20 Javascript
jquery if条件语句的写法
2016/05/19 Javascript
JavaScript对象数组如何按指定属性和排序方向进行排序
2016/06/15 Javascript
jquery判断iPhone、Android设备类型
2016/09/14 Javascript
JS前向后瞻正则表达式定义与用法示例
2016/12/27 Javascript
vue实现word,pdf文件的导出功能
2018/07/31 Javascript
小程序实现选择题选择效果
2018/11/04 Javascript
微信小程序开发之左右分栏效果的实例代码
2019/05/20 Javascript
vue 通过base64实现图片下载功能
2020/12/19 Vue.js
[01:51]DAC趣味视频-如何成为职业选手.mp4
2017/04/02 DOTA
Python找出9个连续的空闲端口
2016/02/01 Python
使用实现pandas读取csv文件指定的前几行
2018/04/20 Python
运用Python的webbrowser实现定时打开特定网页
2019/02/21 Python
聊聊python里如何用Borg pattern实现的单例模式
2019/06/06 Python
tensorflow对图像进行拼接的例子
2020/02/05 Python
pandas分批读取大数据集教程
2020/06/06 Python
Python爬虫实现selenium处理iframe作用域问题
2021/01/27 Python
Spy++的使用方法及下载教程
2021/01/29 Python
澳大利亚冒险体验:Adrenaline(跳伞、V8赛车、热气球等)
2017/09/18 全球购物
Tripadvisor新西兰:阅读评论,比较价格和酒店预订
2018/02/10 全球购物
新西兰最大的天然保健及护肤品网站:HealthPost(直邮中国)
2021/02/13 全球购物
DIY蛋糕店的创业计划书范文
2013/12/26 职场文书
家长建议怎么写
2014/05/15 职场文书
八项规定对照检查材料
2014/08/31 职场文书
Python3中PyQt5简单实现文件打开及保存
2021/06/10 Python
vue实力踩坑之push当前页无效
2022/04/10 Vue.js