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 相关文章推荐
类的另类用法--数据的封装
Oct 09 PHP
php桌面中心(一) 创建数据库
Mar 11 PHP
一步一步学习PHP(8) php 数组
Mar 05 PHP
rrmdir php中递归删除目录及目录下的文件
May 15 PHP
php在线代理转向代码
May 05 PHP
PHP中3种生成XML文件方法的速度效率比较
Oct 06 PHP
php object转数组示例
Jan 15 PHP
如何通过Linux命令行使用和运行PHP脚本
Jul 29 PHP
给WordPress中的留言加上楼层号的PHP代码实例
Dec 14 PHP
yii2中的rules 自定义验证规则详解
Apr 19 PHP
Ecshop 后台添加新功能栏目及管理权限设置教程
Nov 21 PHP
PHP调用接口用post方法传送json数据的实例
May 31 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分页函数
2006/07/08 PHP
一个ftp类(ini.php)
2006/10/09 PHP
php smarty truncate UTF8乱码问题解决办法
2014/06/13 PHP
php绘图之在图片上写中文和英文的方法
2015/01/24 PHP
php单例模式的简单实现方法
2016/06/10 PHP
Smarty模板类内部原理实例分析
2019/07/03 PHP
JS解密入门之凭直觉解
2008/06/25 Javascript
前后台交互过程中json格式如何解析以及如何生成
2012/12/26 Javascript
javascript相等运算符与等同运算符详细介绍
2013/11/09 Javascript
jquery操作checked属性以及disabled属性的多种方法
2014/06/20 Javascript
node.js超时timeout详解
2014/11/26 Javascript
javascript实现ecshop搜索框键盘上下键切换控制
2015/03/18 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
javascript 使用正则test( )第一次是 true,第二次是false
2017/02/22 Javascript
深入浅析Vue中的Prop
2018/06/10 Javascript
jQuery超简单遮罩层实现方法示例
2018/09/06 jQuery
Vue项目中最新用到的一些实用小技巧
2018/11/06 Javascript
基于vue实现一个神奇的动态按钮效果
2019/05/15 Javascript
js前端对于大量数据的展示方式及处理方法
2020/12/02 Javascript
JS实现可以用键盘方向键控制的动画
2020/12/11 Javascript
[02:57]DOTA2亚洲邀请赛小组赛第四日 赛事回顾
2015/02/02 DOTA
[49:29]LGD vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
python常用函数详解
2016/09/13 Python
python使用正则表达式来获取文件名的前缀方法
2018/10/21 Python
对pycharm 修改程序运行所需内存详解
2018/12/03 Python
python 定时器每天就执行一次的实现代码
2019/08/14 Python
Python定义一个函数的方法
2020/06/15 Python
在Python3.74+PyCharm2020.1 x64中安装使用Kivy的详细教程
2020/08/07 Python
突袭HTML5之Javascript API扩展3—本地存储全新体验
2013/01/31 HTML / CSS
西班牙在线宠物食品和配件商店:bitiba
2019/10/11 全球购物
安德玛菲律宾官网:Under Armour菲律宾
2020/07/28 全球购物
中专自我鉴定
2014/02/05 职场文书
2014年创先争优活动总结
2014/05/04 职场文书
优秀教师事迹材料
2014/12/15 职场文书
如何判断微信付款码和支付宝付款码
2021/04/01 PHP
5道关于python基础 while循环练习题
2021/11/27 Python