这几天做项目需要远程连接Oracle数据库,本来以为直接在PHP配置文件php.ini配置文件中,将支持oci8的几个扩展打开就可以了,如下图所示
Paste_Image.png但是,打开之后,依然连接不上。于是在网络上查了一些资料,需要安装instantclient,于是到Oracle官方网站上去下载,但是一下子看到好多版本,就按照大家说的下载了一个basic版,以为电脑是64位Windows7,所以Oracle网站直接跳转到64位instantclient下载位置。下载解压之后,将路径添加到系统路径中,满心欢喜以为应该没问题了。结果还是令人抓狂,连不上。
然后使用phpinfo()函数查了支持情况,如下图所示
图2但是并没有大家在网络上说的<code>oci8 enabled</code>选项。
从instantclient10换到11,又换到12,依然不行,于是就没管它。今天早上工作又要用它,然后仔细看了上面图2,上面竟然是x86,于是又google了一下,发现电脑上装的是PHP 32位版。这并不奇怪,很多32位程序都可以装在64位电脑上,虽然性能不是最好,但都可以正常使用。
发现问题之后又去下载了instantclient11的32位版本,一下成功了,这时再使用phpinfo()查看扩展就能找到下图的文字了
一直特别注意要下载64位的,结果却是要和PHP版本兼容,和电脑多少位无关。写出来和大家共享。
另本人电脑Windows64 Win7,远程连接Oracle 11g。
网友评论