oci8 PHP 확장 설치

oci8 PHP 확장 설치

CentOS 7 서버에서는 remi 저장소에서 PHP를 설치했습니다. 원격 시스템에서 Oracle 9.2에 연결해야 합니다. yum install oci8oci8을 통해 설치하면 OCI8 Version 2.1.0Oracle 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/

관련 정보