====== PHP OCI8 설치 ( MacOS ) ======
===== OS 확인 =====
- 컴의 MacOS 버젼을 확인한다
$ uname -a
Darwin BlueApple.local 18.0.0 Darwin Kernel Version 18.0.0: Wed Aug 22 20:13:40 PDT 2018; root:xnu-4903.201.2~1/RELEASE_X86_64 x86_64
====== 오라클 설정 ======
- 오라클 클라이언트를 다운로드 받는다 \\ https://www.oracle.com/technetwork/topics/intel-macsoft-096467.html
- 아래의 3개의 파일은 꼭 필요하다
- instantclient-basic-macos.x64-12.2.0.1.0-2.zip
- instantclient-sqlplus-macos.x64-12.2.0.1.0-2.zip
- instantclient-sdk-macos.x64-12.2.0.1.0-2.zip
- 다운로드 받은 파일의 압축을 해제한다 \\ 파일압축이 instantclient_12_2 폴더에 압축이 풀린다
$ unzip instantclient-basic-macos.x64-12.2.0.1.0-2.zip
$ unzip instantclient-sqlplus-macos.x64-12.2.0.1.0-2.zip
$ unzip instantclient-sdk-macos.x64-12.2.0.1.0-2.zip
- 압축을 해제한 디렉토리를 /usr/local 로 이동한다
$ sudo mv instantclient_12_2 /usr/local
- .bash_profile 을 설정한다 vi ~/.bash_profile
# ORACLE ENV , OCI8 with PHP — 20181007
export ORACLE_HOME=/usr/local/instantclient_12_2
export OCI_INC_DIR=/usr/local/instantclient_12_2/sdk/include/
export OCI_LIB_DIR=/usr/local/instantclient_12_2
export LD_LIBRARY_PATH=/usr/local/instantclient_12_2
export DYLD_LIBRARY_PATH=/usr/local/instantclient_12_2:$DYLD_LIBRARY_PATH
- 파일에 대한 심볼릭링크를 생성한다
$ ln -sf /usr/local/instantclient_12_2/sdk/include/*.h /usr/local/include/
$ ln -sf /usr/local/instantclient_12_2/sqlplus /usr/local/bin/
$ ln -sf /usr/local/instantclient_12_2/*.dylib /usr/local/lib/
$ ln -sf /usr/local/instantclient_12_2/*.dylib.12.1 /usr/local/lib/
$ ln -sf /usr/local/instantclient_12_2/libclntsh.dylib.12.1 /usr/local/lib/libclntsh.dylib
====== OCI8 설정 ======
===== pear 설정 =====
- pear이 설치되어 있는지 확인한다
$ pear version
PEAR Version: 1.10.6
PHP Version: 7.1.22
Zend Engine Version: 3.1.0
Running on: Darwin BlueApple.local 18.0.0 Darwin Kernel Version 18.0.0: Wed Aug 22 20:13:40 PDT 2018; root:xnu-4903.201.2~1/RELEASE_X86_64 x86_64
- pear 이 설치되어 있지 않다면, pear 을 설치해 준다 \\ 제 Mac은 설치되어 있어서 패스
$ cd /usr/local
$ sudo curl -O http://pear.php.net/go-pear.phar
$ sudo php -d detect_unicode=0 go-pear.phar
$ vi ~/.bash_profile (설치된 폴더에 PATH를 걸어준다)
- 업그레이드가 된 최신버젼인지 확인한다
$ pear upgrade pear
$ pear upgrade
===== FAQ =====
- XCODE 최신버젼으로 설치되어 있는지 확인 xcode-select --install