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 ...
随机推荐
- 详解position定位与定位应用
定位一直是WEB标准应用中的难点,如果理不清楚定位那么可能应实现的效果实现不了,实现了的效果可能会走样.如果理清了定位的原理,那定位会让网页实现的更加完美. 定位的定义: 在CSS中关于 ...
- tcpdump 抓包
简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具. tcpdump可以将网络中传送的数据包的 ...
- List循环添加对象时遇到问题的解决
var temp=new handleData(); foreach(var t in data) { temp.DataValue = t.DataValue; temp.CreateTime = ...
- 【DM642学习笔记二】dsp基础实验:发光二级管的显示 led.c
1,OSDFPGA配置一个专用的8位寄存器控制指示灯亮灭,访问地址为90080017h,由电路图可知低电平点亮. 2,程序运行时,可直接editmemory.即修改90080017h地址的值(可在Ed ...
- Python爬虫笔记【一】模拟用户访问之webdriver用户登入——第三次(8)
经过post方法之后,因为有动态的value值所以再此回到用webdriver的解决上,但是在下载图片上会打开新打开一个链接,导致与网页图片不同即验证码同步问题,没办法只能想了一个笨法子,网页截图,唉 ...
- 简单易学的机器学习算法——基于密度的聚类算法DBSCAN
一.基于密度的聚类算法的概述 最近在Science上的一篇基于密度的聚类算法<Clustering by fast search and find of density peaks> ...
- Simple implementation and results of genetic algorithm.
This experiment was done for the final assignment of my Professional English class. This part has be ...
- Luogu P4768 [NOI2018]归程(Dijkstra+Kruskal重构树)
P4768 [NOI2018]归程 题面 题目描述 本题的故事发生在魔力之都,在这里我们将为你介绍一些必要的设定. 魔力之都可以抽象成一个 \(n\) 个节点. \(m\) 条边的无向连通图(节点的编 ...
- Linux User and Group Management
linux is a multi-user and multitasking OS. In Linux, you can create any number of user account and g ...
- JosnRpcClient
<?php /** * Simple JSON-RPC interface. */ namespace org; class JosnRpcClient{ protected $host; pr ...