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 相关文章推荐
PHP+javascript液晶时钟
Oct 09 PHP
PHP iconv 解决utf-8和gb2312编码转换问题
Apr 12 PHP
PHP中数组的三种排序方法分享
May 07 PHP
PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用
May 07 PHP
PHP防止跨域提交表单
Nov 01 PHP
ThinkPHP跳转页success及error模板实例教程
Jul 17 PHP
php实现删除空目录的方法
Mar 16 PHP
Ubuntu12下编译安装PHP5.3开发环境
Mar 27 PHP
PHP处理会话函数大总结
Aug 05 PHP
PHP使用mkdir创建多级目录的方法
Dec 22 PHP
PHP自定义序列化接口Serializable用法分析
Dec 29 PHP
PHP封装的分页类与简单用法示例
Feb 25 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/07/02 PHP
PHP通过iconv将字符串从GBK转换为UTF8字符集
2011/07/18 PHP
phpQuery占用内存过多的处理方法
2013/11/13 PHP
PHP错误和异长常处理总结
2014/03/06 PHP
PHP中strlen()和mb_strlen()的区别浅析
2014/06/19 PHP
PHP CodeIgniter框架的工作原理研究
2015/03/30 PHP
php提交post数组参数实例分析
2015/12/17 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
2020/03/30 PHP
JavaScript 捕获窗口关闭事件
2009/07/26 Javascript
网络图片延迟加载实现代码 超越jquery控件
2010/03/27 Javascript
jQuery创建自己的插件(自定义插件)的方法
2010/06/10 Javascript
jQuery实用函数用法总结
2014/08/29 Javascript
动态设置form表单的action属性的值的简单方法
2016/05/25 Javascript
ES6新特性三: Generator(生成器)函数详解
2017/04/21 Javascript
全面介绍vue 全家桶和项目实例
2017/12/27 Javascript
不到200行 JavaScript 代码实现富文本编辑器的方法
2018/01/03 Javascript
node实现登录图片验证码的示例代码
2018/04/20 Javascript
Vue实现简易购物车页面
2020/12/30 Vue.js
python中pika模块问题的深入探究
2018/10/13 Python
使用Template格式化Python字符串的方法
2019/01/22 Python
ActiveMQ:使用Python访问ActiveMQ的方法
2019/01/30 Python
Python+AutoIt实现界面工具开发过程详解
2019/08/07 Python
详解Java中一维、二维数组在内存中的结构
2021/02/11 Python
移动端开发HTML5页面点击按钮后出现闪烁或黑色背景的解决办法
2018/09/19 HTML / CSS
美国电视购物:QVC
2017/02/06 全球购物
中国跨境电商:Tomtop
2017/03/16 全球购物
Nisbets法国:英国最大的厨房和餐饮设备供应商
2019/03/18 全球购物
德尔福集团DELPHI的笔试题
2012/02/22 面试题
《画》教学反思
2014/04/14 职场文书
奉献家乡演讲稿
2014/09/16 职场文书
幼师小班个人总结
2015/02/12 职场文书
中学生学习保证书
2015/02/26 职场文书
开学典礼致辞
2015/07/29 职场文书
nginx限制并发连接请求数的方法
2021/04/01 Servers
python执行js代码的方法
2021/05/13 Python
Javascript中async与await的捕捉错误详解
2022/03/03 Javascript