我必须将系统从 升级php5.6
到php7.2
. 该系统使用oracle 10.1
数据库。
现在我尝试收集所有信息,但仍然对,php
和数据库之间的兼容性感到困惑。oci8
instant client
我读到,使用 php7 我必须至少安装oci8 2.1
,但这不适用于oracle 10.1
.
那是对的吗?
或者是否可以php7
使用 oracle运行10.1
?
请赐教:)
我必须将系统从 升级php5.6
到php7.2
. 该系统使用oracle 10.1
数据库。
现在我尝试收集所有信息,但仍然对,php
和数据库之间的兼容性感到困惑。oci8
instant client
我读到,使用 php7 我必须至少安装oci8 2.1
,但这不适用于oracle 10.1
.
那是对的吗?
或者是否可以php7
使用 oracle运行10.1
?
请赐教:)
我读到,使用 php7 我必须至少安装 oci8 2.1,但这不适用于 oracle 10.1。
那是对的吗?
不,从手册中:
OCI8 2.0 需要 Oracle 12c、11g 或 10g 客户端库,并将安装在 PHP 5.2 及更高版本上。
请注意,您使用的 Oracle 客户端版本不需要与服务器版本匹配。从同一手册页(为了便于阅读,重新格式化为要点):
- 如果 OCI8 使用 9iR2 客户端库,那么 PHP 可以连接到 Oracle 数据库 8i、9iR2、10g 或 11g。
- 如果 OCI8 使用 10gR2 客户端库,则数据库可以是 9iR2、10g、11g 或 12c。
- 如果 OCI8 使用 11g 客户端库,则数据库可以是 9iR2、10g、11g 或 12c。
- 如果 OCI8 使用 12c 客户端库,则数据库可以是 10gR2、11g 或 12c。
所以只有最后一个场景(12c 客户端库)需要大于 10.1 的数据库版本。
无论手册上说什么,我都强烈建议您构建一个测试实例并查看您是否有任何问题。
编辑: 来自OCI8 包 PECL 页面的更多信息:
Oracle 的标准跨版本连接适用。例如,与 Instant Client 11.2 链接的 PHP OCI8 可以连接到 Oracle Database 9.2 以后。有关详细信息,请参见 Oracle 的说明“Oracle 客户端/服务器互操作性支持”(ID 207303.1)。