windows PHP连接oracle 部署 php oci配置

最近同事调试项目需要windows本地搭建php连接oracle数据库,以前一直想写,但是忘记了或者没时间,这次有时间就把部署过程记录下来,留给自己或者不了解的人参考一下

instantclient部署

1.首先我们要下载oracle连接客户端支持 instantclient 下载链接 https://www.ora cle.com/database/technologies/instant-client/downloads.html

此处根据自己的电脑位数 选择对应的版本

2.然后选择适合自己的版本,此处我选择的是12.2版本

3.下载完了以后解压,然后将解压的文件夹放到自己指定的目录,如下

4.然后

  a.在D:oracleinstantclient_12_2下新建tnsnames.ora配置文件,内容如下:

orcl =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.11)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl.being.com)
    )
  )

  右击计算机 ->属性->高级系统设置->环境变量

 

 b.将D:oracleinstantclient_12_2添加至系统环境变量

c.新增系统变量

NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252   -->> 服务器端字符集

TNS_ADMIN=D:oracleinstantclient_12_2       -->> 指定tnsnames.ora所在位置

 

接下来配置php oci扩展

php连接oracle模块支持pdo_oci:

http://pecl.php.net/package/PDO_OCI     PDO_OCI-1.0.tgz      Oracle Call Interface 

driver for PDO

http://pecl.php.net/package/oci8       oci8-2.0.8.tgz       Extension for Oracle Database,allows you to access Oracle databases

然后在本地网站根目录创建文件 phpinfo.php ,并写入代码如下

<?php
 phpinfo(); 
?>

然后运行php文件,查看php版本和位数

根据自己的php版本和位数 和线程安全情况,下载对应的pdo oci扩展和php oci扩展,如下

NTS是非线程安全 TS是线程安全

解压这两个文件夹,将php_pdo_oci.dll  和php_oci8.dll 、php_oci8_11g.dll 、php_oci8_12c.dll 放入php安装目录下的ext目录下,其中php_oci8_11g.dll和php_oci8_12c.dll根据自己要链接的oracle版本是 11g 还是12c 按需放入,如果不清楚的就一起放入

然后在php安装目录内的配置文件php.ini 添加扩展代码

extension=php_oci8.dll
extension=php_oci8_11g.dll
extension=php_oci8_12c.dll
extension=php_pdo_oci.dll

最后重启nginx 或者apache服务,再次查看phpinfo,如果出现如下图所示,就说明oci扩展安装成功,liunx的php oci扩展部署思路和windows类似

原文地址:https://www.cnblogs.com/jiafeimao-dabai/p/11763163.html