【发布时间】:2018-03-08 15:28:07
【问题描述】:
我正在尝试在我的 Apache 服务器的 RedHat 服务器 (RHEL7) 上安装 OCI8。 此时,当我尝试使用 Symphony 连接到我的服务器时,我收到此错误:
异常“ErrorException”:使用未定义的常量 OCI_COMMIT_ON_SUCCESS - 假定为“OCI_COMMIT_ON_SUCCESS”
这是我安装 OCI8 时所做的。
- 安装 oracle-instantclient11.2 RPM(开发版和基础版)。
- 安装 OCI8 包:
有关信息,我的服务器上已经有一个 Oracle 12C,但我想将我的 PHP 应用程序连接到另一台服务器 (Oracle 11GR2)。
tar zxvf oci8-2.1.7.tgz
cd oci8-2.1.7
phpize
./configure --with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client64/lib --with-php-config=/opt/rh/rh-php56/root/usr/bin/php-config
make
make install
- 编辑 php.ini 以添加
extension=oci8.so。
我找到了这个thread,我尝试使用oci_connect,但我得到了这个错误:
致命错误:调用未定义函数 oci_connect()
我该如何解决这个问题?
编辑:我刚刚在 php_error.log 中发现了这个错误:
[26-Sep-2017 16:14:12 Europe/Paris] PHP 警告:PHP 启动:无法加载动态库 '/opt/rh/rh-php56/root/usr/lib64/php/modules/oci8 .so' - /opt/rh/rh-php56/root/usr/lib64/php/modules/oci8.so: undefined symbol: _emalloc_128 in Unknown on line 0
【问题讨论】: