CentOS 7 서버에서는 remi 저장소에서 PHP를 설치했습니다. 원격 시스템에서 Oracle 9.2에 연결해야 합니다. yum install oci8
oci8을 통해 설치하면 OCI8 Version 2.1.0
Oracle 9.2와 호환되지 않습니다. 다음은 phpinfo
출력의 내용입니다.
OCI8 Support enabled
OCI8 DTrace Support enabled
OCI8 Version 2.1.0
Revision $Id: 8e84657b6fdeaa913819689ef327ad2808110ed4 $
Oracle Run-time Client Library Version 12.1.0.2.0
Oracle Compile-time Instant Client Version 12.1
다음 명령을 사용하여 이전 버전을 설치하려는 시도 pecl install oci8-1.4.10
도 실패합니다.
In file included from /var/tmp/oci8/oci8.c:58:0:
/var/tmp/oci8/php_oci8_int.h:56:17: fatal error: oci.h: No such file or directory
#include <oci.h>
^
compilation terminated.
make: *** [oci8.lo] Error 1
ERROR: `make' failed
oci8 버전 1.*을 설치하려면 어떻게 해야 합니까?
답변1
다음 단계를 시도해 보셨나요? :
두 개의 RPM 패키지를 설치하십시오.
rpm -ivh instantclient-basic-linux.XXX.rpm
rpm -ivh instantclient-sdk-linux.XXX.rpm
몇 가지 필수 구성 요소 설치
yum install php-pear yum install php-devel
OCI8 확장 프로그램 다운로드
pear download pecl/oci8
tar xvzf oci8-1.4.7.tgz
cd oci8-1.4.7/phpize
Oracle 클라이언트 라이브러리 경로를 사용하여 확장을 구성합니다(자신의 버전에 따라 경로를…/11.2/…로 변경).
./configure --with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client64/lib/
컴파일 및 설치
make
make install
SELinux 구성: httpd가 실행 가능하고 쓰기 가능한 메모리 주소가 필요한 프로그램을 실행하도록 허용합니다.
setsebool -P httpd_execmem 1
php.ini 끝에 다음 구성을 추가합니다.
vi /etc/php.ini
[OCI8] extension=oci8.so
아파치 다시 시작
service httpd restart
원천:http://antoine.hordez.fr/2012/09/30/howto-install-oracle-oci8-on-rhel-centos-fedora/