php7.2安装OCI8扩展支持oracle数据库

简介: 做项目的时候,远程的oracle数据库为我们提供一张中间表,我这边业务中的一些数据是需要到oracle数据库中的这张中间表去查询的。PHP连接oracle数据库。需要用到OCI8的扩展。说来惭愧,工作这么多年,还没有正经的使用过oracle数据库。mysql数据库的语法跟oracle数据库的语法是不一样的,别跟我似的上来就用mysql的语法来操作oracle数据库……有点丢人了……今天我们大概记录一下OCI8扩展的安装过程。

做项目的时候,远程的oracle数据库为我们提供一张中间表,我这边业务中的一些数据是需要到oracle数据库中的这张中间表去查询的。

PHP连接oracle数据库。需要用到OCI8的扩展。说来惭愧,工作这么多年,还没有正经的使用过oracle数据库。

mysql数据库的语法跟oracle数据库的语法是不一样的,别跟我似的上来就用mysql的语法来操作oracle数据库……有点丢人了……

今天我们大概记录一下OCI8扩展的安装过程。

一:下载文件

1:oracle官网下载地址:

www.oracle.com/technetwork…

下载文件(看准了文件名):

复制代码

oracle-instantclient19.8-basic-19.8.0.0.0-1.x86_64.rpm
oracle-instantclient19.8-devel-19.8.0.0.0-1.x86_64.rpm

2:PHP官网下载地址:

www.php.net/manual/zh/o…

PHP-OCI8插件

下载命令:

arduino

复制代码

wget http://pecl.php.net/get/oci8-2.2.0.tgz

建议将以上三个文件放入/opt目录下,当然,具体放哪是你的自由。能找到就行。

二:安装

1:安装oracle插件

复制代码

rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm

可能会报错:

ImportError: libaio.so.1: cannot open shared object file: No such file or directory”

报错原因上边已经给出,缺少libiao插件,解决方法:

复制代码

yum install libaio

2:安装OCI8插件

(1):解压tar包:

复制代码

tar -zxf oci8-2.2.0.tgz

(2):进入解压目录

bash

复制代码

cd oci8-2.2.0

(3):运行一下命令:

复制代码

phpize

运行的时候可能会出现一下错误:Can't find PHP headers in /usr/include/php The php-devel package is required for use

解决方案

bash

复制代码

yum install php72w-devel #注意一下,这条命令取决你安装的PHP版本,我这个命令并不适用所有人

(4):使用$ORACLE_HOME或Instant Client配置软件包

javascript

复制代码

./configure --with-oci8=shared,instantclient,/usr/lib/oracle/<version>/client/lib

ini

复制代码

./configure -with-oci8=shared,$ORACLE_HOME

(5):执行编译安装:

go

复制代码

make install

这里可能会报错:

make: *** No rule to make target build', needed by default'. Stop.

解决方案:

1:安装如下配置:

go

复制代码

yum -y install make zlib-devel gcc-c++ libtool openssl openssl-devel

2:重新configure

bash

复制代码

./configure

3:编译

go

复制代码

make && make install

(6):配置php.ini

我们在PHP的配置文件php.ini中加上

ini

复制代码

extension=oci8.so

重启PHP

复制代码

systemctl restart php-fpm

重启web服务器(nginx、apache等)。

复制代码

systemctl restart nginx

查看PHPinfo();如下图所示:

image.png

然后,你就可以在你的PHP框架中配置多个数据库链接了。

有好的建议,请在下方输入你的评论。

欢迎访问个人博客:guanchao.site

欢迎访问我的小程序:打开微信->发现->小程序->搜索“时间里的”

目录
相关文章
|
27天前
|
存储 Oracle 关系型数据库
Oracle数据库的应用场景有哪些?
【10月更文挑战第15天】Oracle数据库的应用场景有哪些?
151 64
|
7天前
|
Java 程序员 PHP
01 入门PHP就来我这-安装phpstudy
路老师的PHP入门教程,带你从零开始学习PHP。首先下载并安装phpStudy,接着配置域名和端口,最后创建并运行第一个PHP文件。内容详实,适合初学者。
27 3
01 入门PHP就来我这-安装phpstudy
|
23天前
|
NoSQL MongoDB PHP
PHP7 MongDB 安装与使用
10月更文挑战第19天
29 1
PHP7 MongDB 安装与使用
|
17天前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
25 7
|
17天前
|
Oracle 关系型数据库 数据库
oracle数据库技巧
【10月更文挑战第25天】oracle数据库技巧
21 6
|
17天前
|
存储 Oracle 关系型数据库
Oracle数据库优化策略
【10月更文挑战第25天】Oracle数据库优化策略
17 5
|
23天前
|
NoSQL 安全 Linux
MongoDB PHP 扩展
10月更文挑战第19天
12 0
MongoDB PHP 扩展
|
24天前
|
存储 Oracle 关系型数据库
数据库数据恢复—Oracle ASM磁盘组故障数据恢复案例
Oracle数据库数据恢复环境&故障: Oracle ASM磁盘组由4块磁盘组成。Oracle ASM磁盘组掉线 ,ASM实例不能mount。 Oracle数据库故障分析&恢复方案: 数据库数据恢复工程师对组成ASM磁盘组的磁盘进行分析。对ASM元数据进行分析发现ASM存储元数据损坏,导致磁盘组无法挂载。
|
26天前
|
监控 Oracle 关系型数据库
Oracle数据库性能优化
【10月更文挑战第16天】Oracle数据库性能优化是
25 1
|
30天前
|
Oracle 关系型数据库 网络安全
Oracle 19c 安装教程学习
Oracle 19c 安装教程学习
54 2

推荐镜像

更多