Oracle扩展安装【linux-Centos7】

浏览:551 发布日期:2018/12/18 分类:ThinkPHP5专区 关键字: Oracle Centos7
首先说明:
本人本地环境基于 vagrant-Centos7-[集成环境oneinstack]-(多php版本,5.6,7.2);有兴趣的小伙伴可以拿走vagrantbox,稍后会提供连接。

环境有了,开始安装:
1、Oracle的SDK要准备,可以自己到官网下载;首页-开发者-php-立即开始(里面会有详细的包);
进入开发者界面:




上图4内容;根据需要选择安装,教程内说了,这俩包必须安装。
安装完两个oracle的包在下面的软连接建立中会有体现安装的目录地址。

2、安装扩展之前还要进行修改:
以免pdo_oci对oracle低版本支持不足,和系统位数BUG,# ln -s /usr/include/oracle/12.2/client64 /usr/include/oracle/12.2/client
# ln -s /usr/lib/oracle/12.2/client64 /usr/lib/oracle/12.2/client
修改/etc/profile文件,最后加入如下内容:export ORACLE_HOME=/usr/lib/oracle/12.2/client64
export LD_LIBRARY_PATH=/usr/lib/oracle/12.2/client64/lib
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8" //具体字符集,请查看你的oracle服务端sql
保存后出来执行 # source /etc/profile  //立即生效3、安装oci8
首先不推荐生手单独下载扩展安装,容易出现问题解决起来麻烦,网上细心找能找到;
咱们找到你当初安装php时的编译文件的ext扩展目录,找到 【oci8】【pdo_oci】这令个目录,这俩需要安装;
好,接着讲安装 oci8;# cd 你的php源码包目录下的 ext/oci8 目录
#/usr/local/php/bin/phpize CFLAGS=”-I/usr/lib/oracle/12.2/client64” CXXFLAGS=”-I/usr/lib/oracle/12.2/client64”
// 针对不同系统(32-64),切换client64,之前有建立软连接。
使用phpize准备 PHP 外挂模块的编译环境,会根据指定的环境变量生成编译时需要的makefile,
phpize是属于php-devel的内容,所以centos下只要运行yum install php-devel进行安装即可
(注意:/usr/local/php/bin/phpize 为我的php目录,不同则需改之;)
(我是64位的系统,使用client64;你是32位就用client)#./configure –with-php-config=/usr/local/php/bin/php-config –with-oci8=/usr/lib/oracle/12.2/client64

#make
#make install

需要强调的是make的时候会报错,显示各种找不到库文件,需要对makefile文件进行修改加入oralce的运行库地址
打开makefile,寻找INCLUDE,形式如下:
INCLUDES = -I/usr/local/php/include/php ·····
在此行追加 【-I/usr/include/oracle/12.2/client64】
然后重新make就会成功了。
然后在你的php扩展目录 【/usr/local/php/etc/php.d】添加 oci8.ini 文件
内容:[oci8]
extension=oci8.so
此扩展安装完成。

4、安装pdo_oci# cd 你的php源码包目录下的 ext/pdo_oci 目录
phpize

// 会有如下信息:
// Configuring for:
// PHP Api Version:         20090626
// Zend Module Api No:      20090626
// Zend Extension Api No:   220090626

# ./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-oci=/usr/lib/oracle/12.2/client64
# make && make install
这里同样注意,如果发生错误,则修改Makefile,
在其中的INCLUDES继续添加以下内容(根据自己的路径修改):
-I/usr/include/oracle/12.2/client64 -I/usr/lib/oracle/12.2/client64

同上添加pdo_oci.ini 文件
内容:[pdo_oci]
extension=pdo_oci.so
重启php即可。
有关tp5-oracle扩展使用就不再说明了,自己找找。

----------------------------------------------------
vagrantbox 镜像文件:链接:https://pan.baidu.com/s/10H5iFRNDg5oIglivo7f-NA
提取码:cq6m
需要的自行下载使用。
最佳答案
评论( 相关
后面还有条评论,点击查看>>