最近同事调试项目须要windows本地搭建php链接oracle数据库,之前一直想写,可是忘记了或者没时间,此次有时间就把部署过程记录下来,留给本身或者不了解的人参考一下php
instantclient部署html
1.首先咱们要下载oracle链接客户端支持 instantclient 下载连接 https://www.ora cle.com/database/technologies/instant-client/downloads.htmlnginx
此处根据本身的电脑位数 选择对应的版本数据库
2.而后选择适合本身的版本,此处我选择的是12.2版本apache
3.下载完了之后解压,而后将解压的文件夹放到本身指定的目录,以下windows
4.而后安全
a.在D:\oracle\instantclient_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)
)
)
右击计算机 ->属性->高级系统设置->环境变量oracle
b.将D:\oracle\instantclient_12_2添加至系统环境变量网站
c.新增系统变量
NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252 -->> 服务器端字符集
TNS_ADMIN=D:\oracle\instantclient_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相似