一、安装oracle-instantclient
下载地址:http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
分别下载 oracle-instantclient18.3-basic-18.3.0.0.0-3.x86_64.rpm 和 oracle-instantclient18.3-devel-18.3.0.0.0-3.x86_64.rpm
放在/usr/packages/目录下,执行:
# cd /usr/packages/
# rpm -ivh oracle-instantclient*
此时会生成/usr/lib/oracle/18.3/client64/lib/目录。*注:下载对应数据库版本
(上面路径一定要去看看是否生成了,这很重要,路径名称可能不同)
二、修改/etc/ld.so.conf配置文件
追加以下内容 -- 上面生成文件的路径,没有64的写client/lib/:
/usr/lib/oracle/18.3/client64/lib/
保存、退出,执行命令 # ldconfig
三、安装oci8
下载最新的oci8组件
下载地址:http://pecl.php.net/package/oci8
下载 oci-2.0.8.tgz 注意,2.1.7以上的版本对应的PHP版本是PHP 7,注意服务器上的PHP版本,如果版本对应错误,后面make安装时会报错
放在/usr/packages/目录下,依次执行:
# cd /usr/packages/
# tar -xvzf oci-2.0.8.tgz
# cd oci-2.0.8
# /usr/local/php/bin/phpize (用phpize生成configure配置文件,千万注意:phpize、php-config、instantclient目录一定要找对,这个需要自己去找)
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-oci8=shared,instantclient,/usr/lib/oracle/18.3/client64/lib
# make && make install
成功后会告诉你oci8.so已经成功放在以下目录(这仅仅是我的目录,你的可能不同);
四、配置PHP支持OCI扩展
修改php配置文件
# vi /usr/local/php/lib/php.ini文件
在extension项后追加以下内容
extension=oci8.so
五、重启LNMP
六、测试数据库连接
在站点根目录编写oracle.php
代码如下:
<?php
header("Content-type: text/html; charset=utf-8");
$conn= oci_connect('report', 'report', 'ip:port/service','zhs16gbk');
if($conn) {
echo"连接oracle成功!";
}else{
echo"连接oracle失败!";exit;
}
?>