PHP+Oracle本地开发环境搭建方法详解


Posted in PHP onApril 01, 2019

安装instant client

首先,是从https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html下载相应的数据库版本对应的basic和devel的rpm包或zip压缩包。我这里选择rpm包。然后安装:

rpm -Uvh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm

rpm -Uvh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm

这样,instant client工具已经安装好了。接下来是PHP的扩展oci8。

安装oci8扩展

关于oci8的安装方法,在PHP官方文档中有详细的介绍,在线地址http://php.net/manual/en/oci8.installation.php。我这里选用pecl安装。直接运行命令:

pecl install oci8

注意,如果你和我一样使用的也是PHP7.0以上的版本,那么使用上面的命令。如果是其他版本,可以看到pecl的oci8页面有相关说明:

Use 'pecl install oci8-2.0.12' to install

for PHP 5.2 - PHP 5.6. Use 'pecl install oci8-1.4.10' to install for

PHP 4.3.9 - PHP 5.1

在运行安装命令后,会提示输入instant client路径,原文提示为:

Please provide the path to the ORACLE_HOME directory.

Use 'instantclient,/path/to/instant/client/lib' if you're compiling

with Oracle Instant Client [autodetect] :

默认路径为/usr/lib/oracle/11.2/client64/lib。注意,要在前面加上instantclient,完整输入为:

instantclient,/usr/lib/oracle/11.2/client64/lib

我第一次安装的时候,没有仔细阅读,只看到最后的autodetect便直接回车了,导致后面测试连接数据库失败。等待安装好后,还需要最后一步,便是在php.ini中加入配置extension=oci8.so或另起一个.ini文件,重启php-fpm

service php-fpm restart

现在,你便可以连接Oracle数据库了,本地开发环境也搭建好了。

PHP 相关文章推荐
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
Jan 29 PHP
PHP面向对象分析设计的经验原则
Sep 20 PHP
PHP 日期时间函数的高级应用技巧
Oct 10 PHP
php语言流程控制中的主动与被动
Nov 05 PHP
php中读写文件与读写数据库的效率比较分享
Oct 19 PHP
PHP多进程编程实例
Oct 15 PHP
ThinkPHP分组下自定义标签库实例
Nov 01 PHP
php文件下载处理方法分析
Apr 22 PHP
PHP常用算法和数据结构示例(必看篇)
Mar 15 PHP
详谈php中 strtr 和 str_replace 的效率问题
May 14 PHP
phpstudy后门rce批量利用脚本的实现
Dec 12 PHP
PHP基于进程控制函数实现多线程
Dec 09 PHP
phpstorm 配置xdebug的示例代码
Mar 31 #PHP
PHP文件后缀不强制为.php方法
Mar 31 #PHP
PHP中md5()函数的用法讲解
Mar 30 #PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
Mar 30 #PHP
PHP实现的pdo连接数据库并插入数据功能简单示例
Mar 30 #PHP
浅谈php调用python文件
Mar 29 #PHP
PHP数据对象映射模式实例分析
Mar 29 #PHP
You might like
PHP简单系统数据添加以及数据删除模块源文件下载
2008/06/07 PHP
PHP获取网站域名和地址的代码
2008/08/17 PHP
php实现设计模式中的单例模式详解
2014/10/11 PHP
浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)(日常整理)
2015/10/26 PHP
laravel 字段格式化 modle 字段类型转换方法
2019/09/30 PHP
Laravel第三方包报class not found的解决方法
2019/10/13 PHP
PHP 实现base64编码文件上传出现问题详解
2020/09/01 PHP
js 强制弹出窗口代码研究-又一款代码
2010/03/20 Javascript
如何使用jquery动态加载js,css文件实现代码
2013/04/03 Javascript
js实现的map方法示例代码
2014/01/13 Javascript
document.forms用法示例介绍
2014/06/26 Javascript
在JavaScript的正则表达式中使用exec()方法
2015/06/16 Javascript
基于HTML+CSS,jQuery编写的简易计算器后续(添加了键盘监听)
2016/01/05 Javascript
简单实现AngularJS轮播图效果
2020/04/10 Javascript
vue loadmore 组件滑动加载更多源码解析
2017/07/19 Javascript
vue动态配置模板 'component is'代码
2019/07/04 Javascript
基于Vue el-autocomplete 实现类似百度搜索框功能
2019/10/25 Javascript
bootstrap-table后端分页功能完整实例
2020/06/01 Javascript
[03:09]显微镜下的DOTA2第一期——带你走进华丽的DOTA2世界
2014/06/20 DOTA
pycharm 使用心得(一)安装和首次使用
2014/06/05 Python
django框架模板中定义变量(set variable in django template)的方法分析
2019/06/24 Python
详解python中*号的用法
2019/10/21 Python
浅谈Python3多线程之间的执行顺序问题
2020/05/02 Python
Python新手学习标准库模块命名
2020/05/29 Python
python 爬虫如何正确的使用cookie
2020/10/27 Python
CSS3 优势以及网页设计师如何使用CSS3技术
2009/07/29 HTML / CSS
HTML5 Video/Audio播放本地文件示例介绍
2013/11/18 HTML / CSS
Book Depository澳大利亚:世界领先的专业在线书店之一
2018/12/27 全球购物
儿科护士自我鉴定
2013/10/14 职场文书
英语自荐信常用语句
2013/12/13 职场文书
ktv收银员岗位职责
2013/12/16 职场文书
超市中秋节促销方案
2014/03/21 职场文书
导游词欢迎词
2015/02/02 职场文书
2015年学校财务工作总结
2015/05/19 职场文书
员工离职证明范本
2015/06/12 职场文书
2016年政治理论学习心得体会
2016/01/25 职场文书