PHP 5.2(win.server)无法连接到Oracle 12c db

时间:2018-02-02 14:38:07

标签: oracle12c oci8 php-5.2

我有疑问。 在win.server上我有PHP 5.2版本。我必须连接Oracle 12c db。我做的程序是:

  1. 下载oracle client 12.2
  2. 启用 php_oci8.dll
  3. 将PATH插入 C:\ Windows \ SysWOW64 \ instantclient_12_2
  4. 重启服务器
  5. 我也试图插入 php_oci8_12c.dll 扩展名并将oci8_12c.dll文件放在php / ext目录中。 当我真的运行.bat文件时,我看到错误:

    • 缺少MSVCR120.ddl ” - 我将此文件放在/ php / ext目录中解决此问题。
    • “无法在动态链接库中找到程序入口点 gc_remove_zval_from_buffer php5ts.dll

    在我的本地电脑上我有PHP 5.6,他们使用12c oracle。 在互联网上看到5.2版本可以使用12c。

    潜在的问题是什么?我能尝试什么?

2 个答案:

答案 0 :(得分:1)

OCI 12c需要 PHP 5.5 ,请参阅http://www.oracle.com/technetwork/articles/dsl/technote-php-instant-12c-2088811.html

您可以尝试安装 Visual C ++ Redistributable Package

因为无法通过将其置于ext文件夹中来修复MSVCR120.dll错误。

当您使用Apache和/或Console客户端时,请确保已在两个php.ini文件中启用,因为它们是不同的配置。

您还可以尝试https://pecl.php.net/package/oci8

中的PECL OCI包

确保选择正确的版本,最新版仅适用于PHP 7。

答案 1 :(得分:0)

我终于设法安装了它,带来了一些奇迹,因为我喜欢这么多时间......

我所做的步骤是:

  • 下载instaclient12.2(32位)
  • 安装visual c ++ redistributable 2013

  • 将instaclient_12_2放入C:\ Windows \ SysWOW64 \

  • 插入路径C:\ Windows \ SysWOW64 \ instantclient_12_2
  • 下载 oci8_2.0.12 X64 TS 并将 php_oci8_12c.dll 放入php / ext
  • 将oci.dll(来自instantclient_12_2(32位))放入C:\ Apache24 \ bin,C:\ php \ ext和C:\ php
  • 启用扩展php_oci8_12c.dll ini php.ini

在服务器上是Windows server 2008 R1和PHP 5.6.2 TS