Langsung ke konten utama

Install Oci8 ubuntu 16.04

First Prerequirements are a working apache2 and php7.2 (Ubuntu 18.04) environment.
  1. Download the basic (like instantclient-basic-linux.x64-12.2.0.1.0.zip) and the SDK (instantclient-sdk-linux.x64-12.2.0.1.0.zip) package from the Oracle Website http://www.oracle.com/technetwork/database/database-technologies/instant-client/downloads/index.html
  2. Upload both files to your web server, you can use WinSCP for it
  3. Unzip both files on a server, in my case, you will get a new folder named "instantclient_12_2"
4a. Create a destination folder

mkdir /opt/oracle
4b. Move and rename the instantclient folder

mv instantclient_12_2 /opt/oracle/instantclient
4c. Change rights on the folder
chown -R root:www-data /opt/oracle
  1. Check if you have the required packages for installing OCI8
apt install php7.2-dev php-pear build-essential libaio1
  1. Create necessary soft links
ln -s /opt/oracle/instantclient/libclntsh.so.12.1 /opt/oracle/instantclient/libclntsh.so
ln -s /opt/oracle/instantclient/libocci.so.12.1 /opt/oracle/instantclient/libocci.so
7a. Add instant client to ld config files
echo /opt/oracle/instantclient > /etc/ld.so.conf.d/oracle-instantclient.conf
7b. Update Dynamic Linker Run-Time Bindings
ldconfig
8a. Now install OCI8 by pecl
pecl install oci8
8b. The OCI8 installation is asking you for the right folder
instantclient,/opt/oracle/instantclient
9a. Add oci lib to the cli php config (console php)
echo "extension = oci8.so" >> /etc/php/7.2/cli/php.ini
9b. Add oci lib to the apache php config
echo "extension = oci8.so" >> /etc/php/7.2/apache2/php.ini
10a. Set environment variables for the CLI version (you will need to reboot the server after)
echo "LD_LIBRARY_PATH=\"/opt/oracle/instantclient\"" >> /etc/environment
echo "ORACLE_HOME=\"/opt/oracle/instantclient\"" >> /etc/environment
10b. Set environment variables for the Apache version
echo "export LD_LIBRARY_PATH=\"/opt/oracle/instantclient\"" >> /etc/apache2/envvars
echo "export ORACLE_HOME=\"/opt/oracle/instantclient\"" >> /etc/apache2/envvars
  1. Restart Apache
service apache2 restart
  1. You're done, now you can test your connection to the Oracle database
=PHP CONNECTION EXAMPLE=
<?php
// Create connection to Oracle, change HOST IP and SID string!
$db = "(DESCRIPTION=(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 000.000.000.000)(PORT = 1521)))(CONNECT_DATA=(SID=XXX)))";
// Enter here your username (DBUSER) and password!
$conn = oci_connect("DBUSER", "PASSWORD",$db);
if (!$conn) {
   $m = oci_error();
   echo $m['message']. PHP_EOL;
   exit;
}
else {
   print "Oracle database connection online". PHP_EOL;
}

?>

Komentar

Postingan populer dari blog ini

Konfigurasi Proxy Server Squid Lusca + Mikrotik menggunakan Ubuntu 14.04

Kali ini aku akan membagikan dokumentasi yang akan aku terapkan pada pekerjaan kecilku di sebuah Internet Cafe di daerah jogja. karena permintaan dari client untuk menggunakan proxy sebagai web cache, aku akan mencoba memasang menggunakan komputer Jogloabang (http://jogloabang.com). sebelumnya kita akan mengenal yang namanya Proxy Server . Proxy Server adalah server yang bertindak sebagai perantara permintaan dari klien mencari sumber daya dari server lain. Seorang klien terhubung ke server proxy , meminta beberapa layanan, seperti file, koneksi, halaman web, atau sumber daya lain yang tersedia dari server yang berbeda dan server proxy mengevaluasi permintaan sebagai cara untuk menyederhanakan dan mengontrol kompleksitasnya. Proxy diciptakan untuk menambah struktur dan enkapsulasi untuk sistem terdistribusi. Saat ini, kebanyakan proxy adalah proxy web, memfasilitasi akses ke konten di World Wide Web dan menyediakan anonimitas. ( Sumber ). lalu apa itu Squid? Squid adalah sebuah daemo...

install php5.3 ubuntu 14.04, 16.04, 18.04 with cgi not fcgi

Halo, kali ini saya akan membagikan tutorial mudah untuk compile dan install php5.3 di ubuntu 14.04, btw.. di 18.04 juga bisa sebenernya, asalakan perinsipnya tahu.  kenapa saya pake cgi tidak fcgi? ya karena lebih enteng dari fcgi, dan fpm. nah biasanya, kita sering dihadapkan dengan kondisi dimana diharuskan memasang aplikasi lama, di server yang OS nya ke-kinian. oke.. bisa dipahami? untuk install php5.3 diubuntu, diperlukan keahlian dalam mengatasi error dan mencarinya di google. yuk mulai 1. Unduh file compile PHP wget -O php-5.3.29.tar.gz http://de1.php.net/get/php-5.3.29.tar.gz/from/this/mirror 2. install depedensi yang dibutuhkan: apt-get install apache2 apt-get install build-essential apt-get install libxml2-dev apt-get install libcurl4-openssl-dev pkg-config apt-get install libbz2-dev apt-get install libjpeg-turbo8-dev apt-get install libpng-dev apt-get install libfreetype6-dev apt-get install libmcrypt-dev libreadline-dev apt-get install libmysqlclient1...

Mengatasi Error DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled

Jika di mysql mendapatkan error seperti dibawah ini: 1418 (HY000) at line 10185: This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable) dapat diselesaikan dengan cara: 1. jalan kan di cmd/terminal: SET GLOBAL log_bin_trust_function_creators = 1; 2. Masukan di konfgurasi my.cnf : log_bin_trust_function_creators = 1;