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 引用(&)详解
Nov 20 PHP
PHP 设置MySQL连接字符集的方法
Jan 02 PHP
在php和MySql中计算时间差的方法
Apr 22 PHP
PHP页面间参数传递的四种方法详解
Jun 09 PHP
解析php file_exists无效的解决办法
Jun 26 PHP
yii2中添加验证码的实现方法
Jan 09 PHP
解决yii2左侧菜单子级无法高亮问题的方法
May 08 PHP
php 二维数组时间排序实现代码
Nov 19 PHP
php生成图片缩略图功能示例
Feb 22 PHP
php实现微信企业号支付个人的方法详解
Jul 26 PHP
详解no input file specified 三种解决方法
Nov 29 PHP
php实现记事本案例
Oct 20 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修改时间格式的代码
2011/05/29 PHP
调整PHP的性能
2013/10/30 PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
2014/06/25 PHP
Javascript hasOwnProperty 方法 & in 关键字
2008/11/26 Javascript
为jquery.ui.dialog 增加“在当前鼠标位置打开”的功能
2009/11/24 Javascript
jQuery 方法大全方便学习参考
2010/02/25 Javascript
jquery 表格分页等操作实现代码(pagedown,pageup)
2010/04/11 Javascript
jquery下将选择的checkbox的id组成字符串的方法
2010/11/28 Javascript
Js实现动态添加删除Table行示例
2014/04/14 Javascript
jQuery插件Tmpl的简单使用方法
2015/04/27 Javascript
js实现简单折叠、展开菜单的方法
2015/08/28 Javascript
js实现的星星评分功能函数
2015/12/09 Javascript
js仿微信语音播放实现思路
2016/12/12 Javascript
Bootstrap Table使用整理(一)
2017/06/09 Javascript
vue的事件绑定与方法详解
2017/08/16 Javascript
C#实现将一个字符转换为整数
2017/12/12 Javascript
javaScript产生随机数的用法小结
2018/04/21 Javascript
React 组件间的通信示例
2018/06/14 Javascript
解决微信授权成功后点击按返回键出现空白页和报错的问题
2020/06/08 Javascript
利用 JavaScript 实现并发控制的示例代码
2020/12/31 Javascript
关于python的bottle框架跨域请求报错问题的处理方法
2017/03/19 Python
python自定义函数def的应用详解
2020/06/03 Python
Keras之fit_generator与train_on_batch用法
2020/06/17 Python
施华洛世奇澳大利亚官网:SWAROVSKI澳大利亚
2017/01/06 全球购物
Under Armour安德玛法国官网:美国高端运动科技品牌
2018/06/29 全球购物
Theflamel意大利:女士奢华服装、鞋子和配件
2020/01/11 全球购物
Lentiamo比利时:便宜的隐形眼镜
2020/02/14 全球购物
L’Artisan Parfumeur官网:法国香水品牌
2020/08/11 全球购物
生日主持词
2014/03/20 职场文书
请假条范文大全
2014/04/10 职场文书
英语故事演讲稿
2014/04/29 职场文书
环保倡议书100字
2014/05/15 职场文书
大学新闻系自荐书
2014/05/31 职场文书
忠诚奉献演讲稿
2014/09/12 职场文书
MySQL query_cache_type 参数与使用详解
2021/07/01 MySQL
Java数据开发辅助工具Docker与普通程序使用方法
2021/09/15 Java/Android