php安装oci8和pdo_oci扩展实现连接oracle数据库
PHP一般跟MySQL数据库搭配使用,但最近遇到一个需求需要实现PHP连接Oracle,了解到PHP可以通过pdo_oci和oci8扩展来连接Oracle,这里将安装的过程记录下来。
安装环境:PHP7.2.18,Deepin15.10
首先,安装oci8和pdo_oci扩展依赖的Oracle client。
了解到需要连接的Oracle版本为11.2.0.4.0,在这里下载对应版本的Oracle client压缩包。
instantclient-basic-linux.x64-11.2.0.4.0.zip
instantclient-sdk-linux.x64-11.2.0.4.0.zip
将上面的压缩包放入同一个目录中解压,这里放入/opt/oracle目录,然后解压,命令如下:
cd /opt/oracle
unzip instantclient-basic-linux.x64-11.2.0.4..zip
unzip instantclient-sdk-linux.x64-11.2.0.4..zip
将解压后的文件夹重命名
mv instantclient_11_2 instantclient
添加软连接
cd instantclient
ln -s libclntsh.so.11.1 libclntsh.so
ln -s libocci.so.11.1 libocci.so
安装 libaio
软件包。这在某些 Linux 版本中名为 libaio1,
当前系统环境下软件包的名称为libaio1
sudo apt-get install -y libaio1
生成动态链接库系统缓存
sudo sh -c "echo /opt/oracle/instantclient > \
/etc/ld.so.conf.d/oracle-instantclient.conf"
sudo ldconfig
然后,编译安装oci8扩展和pdo_oci扩展
PHP的oci8和pdo_oci扩展都已包含在PHP的源码扩展包目录中,所以首先从PHP的官方github仓库下载对应自己PHP版本的PHP源代码,这里是7.2.18,可通过克隆和下载压缩包的方式,我这里通过下载压缩包的方式,下载后放入/usr/local/src目录下解压,解压后的目录为/usr/local/src/php-7.2.18。注意:php、phpize、php-config都需要在PATH环境变量中找到。
编译安装oci8扩展
cp -r /usr/local/src/php-7.2./ext/oci8/ /tmp/
cd /tmp/oci8
phpize
./configure --with-oci8=instantclient,/opt/oracle/instantclient
make
sudo make install
完成后,编辑php.ini文件,加入extension=oci8,运行php -m 命令查看有oci8表明安装成功。
编译安装pdo_oci扩展
cp -r /usr/local/src/php-7.2./ext/pdo_oci/ /tmp/
cd /tmp/pdo_oci
phpize
./configure --with-oci8=instantclient,/opt/oracle/instantclient,11.2.0.4.
make
sudo make install
完成后,编辑php.ini文件,加入extension=pdo_oci,运行php -m 命令查看有PDO_OCI表明安装成功。
php安装oci8和pdo_oci扩展实现连接oracle数据库的更多相关文章
- 通过使用精简客户端,且不需要安装的客户端,配合PLSQL连接oracle数据库
通过使用精简客户端,且不需要安装的客户端,配合PLSQL连接oracle数据库. 首先下载安装包在Oralce官方网站上下载Oracle Instantclient Basic package.地址如 ...
- Linux下为PHP安装oci8及pdo_oci扩展
下载instantclient 以及sdk instantclient-basic-linux-x86-64-11.2.0.2.0.zip oracle-instantclient11.2-sdk-1 ...
- Navicat 连接 Oracle数据库并,导入数据泵(.dmp)
如有什么质疑的地方,希望可以和大家一起探讨,共同进步. 一.安装方法: 1.首先下载Navicat Premium和Oracle Database Oracle Database官网下载地址:http ...
- linux系统下php通过php_oci8扩展连接oracle数据库 Nginx
相关版本信息: PHP Version 5.6.30 nginx version: nginx/1.10.3 Linux version 2.6.32-358.el6.x86_64 (mockbuil ...
- [原创]安装Oracle 11gR2,以及如何在win8下使用plsql develper连接Oracle数据库 ,在这里和大家分享下
一,关于win8下安装Oracle 11gR2 1.我下载的是Oracle_11gR2_win64.其中有两个包: 注意:在解压了之后将:win64_11gR2_database_2of2\datab ...
- .net远程连接oracle数据库不用安装oracle客户端
asp.net远程连接oracle数据库不用安装oracle客户端的方法下面是asp.net连接远程Oracle数据库服务器步骤: 1.asp.net连接oracle服务器需要添加Sytem.Data ...
- .net远程连接oracle数据库不用安装oracle客户端的方法
.net远程连接oracle数据库不用安装oracle客户端的方法步骤: 1.添加Sytem.Data.OracleClient命名空间. 2.连接时需要ConnectionString字符串,出现在 ...
- 无需安装Oracle Client连接Oracle数据库
介绍 当我们采用 ODP.NET 检索Oracle 数据库的时候,Oracle客户端是必须安装.假如当时电脑上没有安装Oracle客户端,就不能这么用了,这时候Oracle.ManagedDataAc ...
- C# 连接Oracle数据库,免安装oracle客户端
一.方案1 首先下面的内容,有待我的进一步测试和证实.18.12.20 被证实了,还需要安装Oracle客户端,或者本机上安装oracle数据库软件. 18.12.20 1.下载Oracle.Mana ...
随机推荐
- css设置字体小于12px
p { white-space: nowrap; font-size: .12rem; -webkit-transform-origin-x: 0; //缩小后文字居左 -webkit-transfo ...
- 堆,栈,内存管理, 拓展补充-Geekband
8, 堆,栈,内存管理 栈: local objects 在离开作用域之后就会被消除. 堆: new MyClass 一直会存在 静态对象: static local object 作用域在 ...
- OSG在VS2008下的配置安装
一.准备工作 下载相关的工具软件: 1, 最新版的OSG库:OpenSceneGraph-2.8.2.zip. 2, 安装源代码所需要的工具:cmake-2.6.4-win32-x86.zip 3, ...
- 2019-2-18-VisualStudio-给项目添加特殊的-Nuget-的链接
title author date CreateTime categories VisualStudio 给项目添加特殊的 Nuget 的链接 lindexi 2019-02-18 15:56:48 ...
- Linux常用命令的缩写含义
命令缩写: ls:list(列出目录内容) cd:Change Directory(改变目录) su:switch user 切换用户rpm:redhat package manager 红帽子打包管 ...
- string主要操作函数
参考博客:http://blog.csdn.net/zhenyusoso/article/details/7286456 std::string illegal(" \t\f\v\n\r\\ ...
- ArcGIS中线转面
1. 打开ArcMap用Add Data加载shp Polyline线文件. 2. 选Editor编辑\Start Editing开始编辑. 3. 选Editor编辑\More Editing Too ...
- DSP日志打印 LOG_printf
LOG_printf 依托BIOS环境,需要引用下列头文件: #include <std.h> #include <log.h> 并且,要在.tcf环境中添加一个LOG ...
- MySQL数据库 字段操作 多表关系(更新中...)
外键 (foreign key) ## 外键 ```mysql # 作者(author):id,name,sex,age,mobile, detail_id # 作者详情(author_detail) ...
- hbase字典顺序存储
rowkey rowkey是行的主键,而且hbase只能用个rowkey,或者一个rowkey范围即scan来查找数据.所以 rowkey的设计是至关重要的,关系到你应用层的查询效率.我们知 ...