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 相关文章推荐
如何在symfony中导出为CSV文件中的数据
Oct 06 PHP
php实现自动获取生成文章主题关键词功能的深入分析
Jun 03 PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
Apr 08 PHP
ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法
Jul 01 PHP
深入分析PHP引用(&)
Sep 04 PHP
四个PHP非常实用的功能
Sep 29 PHP
46 个非常有用的 PHP 代码片段
Feb 16 PHP
PHP动态生成指定大小随机图片的方法
Mar 25 PHP
thinkphp框架下实现登录、注册、找回密码功能
Apr 06 PHP
yii2 数据库读写分离配置示例
Feb 10 PHP
ThinkPHP Where 条件中常用表达式示例(详解)
Mar 31 PHP
mac系统下安装多个php并自由切换的方法详解
Apr 21 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+dbfile开发小型留言本
2006/10/09 PHP
php生成图片验证码-附五种验证码
2015/08/19 PHP
PHP使用PHPexcel导入导出数据的方法
2015/11/14 PHP
php实现的XML操作(读取)封装类完整实例
2017/02/23 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
2017/08/29 PHP
JavaScript 事件记录使用说明
2009/10/20 Javascript
屏蔽Flash右键信息的js代码
2010/01/17 Javascript
jquery radio 操作代码
2011/03/16 Javascript
JS数组(Array)处理函数整理
2014/12/07 Javascript
JS工作中的小贴士之”闭包“与事件委托的”阻止冒泡“
2016/06/16 Javascript
微信小程序 加载 app-service.js 错误解决方法
2016/10/12 Javascript
JavaScript实现Fly Bird小游戏
2016/12/15 Javascript
vue模板语法-插值详解
2017/03/06 Javascript
ES6新特性之数组、Math和扩展操作符用法示例
2017/04/01 Javascript
Async Validator 异步验证使用说明
2017/07/03 Javascript
vuejs实现本地数据的筛选分页功能思路详解
2017/11/15 Javascript
JavaScript中变量提升和函数提升的详解
2020/08/07 Javascript
JavaScript实现京东快递单号查询
2020/11/30 Javascript
[03:51]吞吞映像 每周精彩击杀top10第二弹
2014/06/25 DOTA
Python实现的用户登录系统功能示例
2018/02/05 Python
基于Python中numpy数组的合并实例讲解
2018/04/04 Python
Python中调用其他程序的方式详解
2019/08/06 Python
python图形用户接口实例详解
2019/12/16 Python
Django restful framework生成API文档过程详解
2020/11/12 Python
Hunkemöller西班牙:欧洲最大的内衣连锁店
2018/08/15 全球购物
Volcom英国官方商店:美国殿堂级滑板、冲浪、滑雪服装品牌
2019/03/13 全球购物
采用怎样的方法保证数据的完整性
2013/12/02 面试题
春风行动实施方案
2014/03/28 职场文书
趣味运动会广播稿
2014/09/13 职场文书
2014年实验室工作总结
2014/12/03 职场文书
2014年监理个人工作总结
2014/12/11 职场文书
酒店辞职书范文
2015/02/26 职场文书
早恋主题班会
2015/08/14 职场文书
正确使用MySQL update语句
2021/05/26 MySQL
Python上下文管理器Content Manager
2021/06/26 Python
万能密码的SQL注入漏洞其PHP环境搭建及防御手段
2021/09/04 SQL Server