Thursday, May 10, 2012

Kompilasi dan Instalasi Oracle OCI8 Untuk PHP 5.4.0 di Linux CentOS

Selain MySQL, Oracle menjadi salah satu basis data (database) RDBMS yang banyak digunakan di perusahaan-perusahaan kelas enterprise. Kehandalan basis data Oracle dalam menangani data dalam ukuran sangat besar memang tidak perlu diragukan lagi. Selain dapat diakses menggunakan berbagai platform yang disediakan Oracle, kita juga dapat menggunakan bahasa pemrograman PHP untuk membangun aplikasi untuk penanganan datanya. Syaratnya kita harus memasang PHP yang sudah dikompilasi dengan dukungan OCI8. Untuk alasan praktis, pengguna bisa saja memilih menggunakan XAMPP yang biasanya sudah memasukkan dukungan OCI8 untuk mengakses basis data Oracle. Sedangkan bagi mereka yang memilih untuk melakukan kompilasi PHP secara manual harus pula melakukan kompilasi OCI8.

Persiapan Kompilasi OCI8
Di sistem operasi Linux CentOS 5.5 atau rilis sesudahnya, kita harus terlebih dahulu memasang Instant Client sebagai prasyarat kompilasi driver OCI8. Paket RPM untuk Instant Client ini dapat diunduh di situs resmi Oracle. Lakukan instalasi sebagai user root.
rpm -ivh oracle-instantclient11.2-basic-11.2.0.3.0-1.i386.rpm
rpm -ivh oracle-instantclient11.2-devel-11.2.0.3.0-1.i386.rpm
Jika menggunakan CentOS 64 bit atau sistem operasi Linux lain maka sesuaikan paket yang diunduh dari alamat ini.

Kompilasi dan Instalasi OCI8
Kode sumber OCI8 yang dibutuhkan untuk kompilasi ini dapat kita unduh dari situs pecl. Saat ini versi terbaru adalah 1.4.7. Ekstrak berkas tersebut lalu masuk ke dalam direktori hasil ekstrak.
tar -xzvf oci8-1.4.7.tgz
cd oci8-1.4.7
Siapkan direktori ini untuk kompilasi:
/opt/bin/phpize
Pemanggilan phpize dengan path lengkap seperti ini harus dilakukan karena sebelumnya kita melakukan kompilasi PHP 5.4.0 dengan target direktori /opt. Lanjutkan dengan melakukan konfigurasi:
./configure --with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client/lib/ --with-php-config=/opt/bin/php-config
Lakukan kompilasi dan instalasi OCI8 dengan mengeksekusi perintah berikut sebagai user root:
make install
Pastikan OCI8 terpasang dengan baik, tanda-tandanya kita akan mendapatkan oci8.so di direktori /opt/lib/php/extensions/no-debug-non-zts-20100525.

Konfigurasi PHP
Setelah berhasil melakukan kompilasi dan instalasi OCI8, berikutnya kita harus menambahkan baris berikut di konfigurasi php.ini yang biasanya terdapat di /etc/httpd/php.ini:
extensions=oci8.so
Kemudian restart service Apache:
service httpd restart
Fungsi phpinfo() akan menampilkan informasi seperti pada tangkapan layar berikut yang menandakan kompilasi dan instalasi OCI8 di CentOS 5.5 berhasil dengan baik.
Referensi: php.net.