Configuration PHP 7 Connect Oracle Database 11gR2 on ISPConfig 3.1

บนตัวของ ISPConfig สามารถต่อกับ Database อื่น ๆ ได้ ไม่จำเป็นต้องต่อกับ MySQL เพียงอย่างเดียว การต่อกับ Oracle Database ก็ไม่ยากครับ


Configuration

  • สร้างโฟลเดอร์ไว้เก็บไฟล์ Oracle Instant Client
# mkdir /opt/oracle
# cd /opt/oracle
# wget http://download.oracle.com/otn/linux/instantclient/122010/instantclient-basic-linux.x64-12.2.0.1.0.zip?AuthParam=xxx
# wget http://download.oracle.com/otn/linux/instantclient/122010/instantclient-sdk-linux.x64-12.2.0.1.0.zip?AuthParam=xxx
# unzip instantclient-sdk-linux.x64-12.2.0.1.0.zip
# unzip instantclient-basic-linux.x64-12.2.0.1.0.zip
  • สร้าง symlink ของ Library Oracle Instant Client
# ln -s /opt/oracle/instantclient_12_2/libclntsh.so.12.1 /opt/oracle/instantclient_12_2/libclntsh.so
# ln -s /opt/oracle/instantclient_12_2/libocci.so.12.1 /opt/oracle/instantclient_12_2/libocci.so
# echo /opt/oracle/instantclient_12_2 > /etc/ld.so.conf.d/oracle-instantclient
  • Update the Dynamic Linker Run-Time Bindings
# ldconfig
  • ทำการดาวน์โหลดและแตกไฟล์ OCI8 Extension
# wget https://pecl.php.net/get/oci8-2.1.8.tgz
# tar -xzvf oci8-2.1.8.tgz
# cd oci8-2.1.8
  • ตรวจสอบ Environment ก่อนทำการ Build Extension สำหรับ PHP
# phpize
  • ทำการติดตั้ง Build Extension
# ./configure --with-oci8=instantclient,/usr/lib/oracle/12.2/client64/lib
# make install
  • ก่อนติดตั้ว OCI8 Extension ต้องติดตั้ง Package เพิ่มเติม
# apt-get install php-dev php-pear build-essential libaio1
# pecl install oci8
  • เลือก Location ตอนติดตั้ง OCI8 ไปที่
instantclient,/opt/oracle/instantclient_12_2
  • ทำการ Enable Extension บนไฟล์ php.ini
# echo "extension = oci8.so" >> /etc/php/7.0/fpm/php.ini
# echo "extension = oci8.so" >> /etc/php/7.0/cli/php.ini
  • ตรวจสอบ OCI8 Extension บน PHP ว่าถูก Enable แล้วรึยัง
# php -m | grep 'oci8'
  • ทำการ Restart Service PHP-FPM
# service php7.0-fpm restart
  • บน ISPConfig ให้เลือกเป็น PHP-FPM
  • เขียนไฟล์ phpinfo.php ไว้ใน path ของ site
<?php
phpinfo();
?>

อ่านเพิ่มเติม : https://bit.ly/2yZGTjahttps://bit.ly/2tl4SVZ


Leave a Reply

Your email address will not be published. Required fields are marked *