• 0 Oy - 0 Ortalama
  • 1
  • 2
  • 3
  • 4
  • 5
PHP ile Oracle Bağlantısı

 
#1

Linux sunucu üzerinde gerekli kütüphanelerin yapılandırılması ve PHP üzerinden Oracle bağlantı işlemi
Adım 1

Sunucunuz üzerine öncelikle Oracle sitesi üzerinden gerekli kütüphanelerinizi indirmeniz gerekiyor. Daha önce bu işlemi nasıl yapılacağını açıklamıştık bu yazımızdan ulaşabilirsiniz. Oracle Kütüphaneleri 
Adım 2
PHP extensionu için gerekli paketlerin kurulması.

apt-get install php-pear php5-dev build-essential libaio1

Adım 3
Bu kısım önemli hangi paketi kurmamız gerektiğine kullanmış olduğumuz PHP versiyonuna bakarak karar vermemiz gerekiyor.
Alıntı: php -v 
PHP 5.4.45-0+deb7u8 (cli) (built: Mar 27 2017 22:43:09)
Bizim kullandığımı versiyon PHP 5.4 olduğu için PHP 5.2 - PHP 5.6 aralığına girmektedir bu yüzden aşağıdaki kod satırını çalıştırmanız gerekmektedir.

pecl install oci8-2.0.12

PHP 7 
pecl install oci8

PHP 4.3.9 - PHP 5.1. 
pecl install oci8-1.4.10
Kurulum işleminde size Oracle pathini soracak onuda /etc/ld.so.conf.d/oracle.conf dosyası içinden bulabilirsiniz. Ben bu şekilde /u01/app/oracle/product/11.2.0/xe/ verince sorunsuz bir şekilde çalıştırmıştır.

Adım 4

Şimdi php.ini dosyasına oci extensionlarını yükleyelim. 
Apache için 
echo "extension = oci8.so" >> /etc/php5/apache2/php.ini

Nginx için 
echo "extension = oci8.so" >> /etc/php5/fpm/php.ini

Cli için 
echo "extension = oci8.so" >> /etc/php5/cli/php.ini

Adım 5

Servisleri restart yapalım 
Apache için 
service apache2 restart

Nginx için 
service php5-fpm restart
service nginx restart

Php içinde kullanmak için ORACLE_HOME ve LD_LIBRARY_PATH ayarlamalarını yapabilirsiniz.

$ORACLE_HOME = '/u01/app/oracle/product/11.2.0/xe';
$LD_LIB = '/u01/app/oracle/product/11.2.0/xe/lib';
putenv("ORACLE_HOME=$ORACLE_HOME");
putenv("LD_LIBRARY_PATH=$LD_LIB");


Codeigniter Oracle Bağlantısı

$active_group = 'default';
$active_record = TRUE;

$tnsname = '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))';

$db['default']['hostname'] = $tnsname;
$db['default']['username'] = 'PYTHONTR';
$db['default']['password'] = 'xxxxx';
$db['default']['database'] = '';
$db['default']['dbdriver'] = 'oci8';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
# $db['default']['db_debug'] = FALSE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;




Bul
Alıntı


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  Medoo ile Veritabanı Bağlantısı selami 0 2,669 30-05-2017, Saat: 16:39
Son Mesaj: selami

Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


Bu konuyu görüntüleyen kullanıcı(lar):
1 Ziyaretçi

   
Türkçe Çeviri: Emre KRMN, Kodlayanlar MyBB, © 2002-2024 MyBB Group.  



Merih Forum® bilgi paylaşım platformu. 2015-∞ Tüm hakları saklıdır.