Compilación del modulo OCI8 e Instalación del InstantCliente para Utilizar Oracle desde PHP

Page last edited hace 2059 días 13 horas
De Solaris-ES
Saltar a: navegación, buscar

Instalar y configurar InstatClient de Oracle[editar]

Paquetes Necesarios Download[editar]

   instantclient-basic-solaris.x32-11.2.0.3.0.zip
   instantclient-sdk-solaris.x32-11.2.0.3.0.zip
   instantclient-tools-solaris.x32-11.2.0.3.0.zip
   instantclient-jdbc-solaris.x32-11.2.0.3.0.zip
   instantclient-odbc-solaris.x32-11.2.0.3.0.zip
   instantclient-precomp-solaris.x32-11.2.0.3.0.zip
   instantclient-sqlplus-solaris.x32-11.2.0.3.0.zip
# cd /oracle
# unzip instantclient*

# cd instantclient_11_2
# ln -s libclntsh.so.11.1 libclntsh.so
# ln -s libocci.so.11.1 libocci.so

Compilar el modulo de PHP - OCI8[editar]

# cd /var/www/tiadm/tmp/php-5.3.9/ext/oci8

# phpize --clean && phpize
Cleaning..
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626

# ./configure --with-oci8=instantclient,/oracle/instantclient_11_2,11.2.0.3.0
# make
# make install
Ultima version del modulo OCI8

Actualizar php.ini[editar]

# more /usr/local/php/lib/php.ini
extension=oci8.so
extension=pdo_mysql.so
extension=snmp.so
extension=expect.so
extension=ssh2.so
extension=memcache.so
extension=apc.so
apc.enabled=1

Configurar Entorno de Apache y reiniciar APACHE[editar]

TNS_ADMIN=/oracle/10.2.0.1/network/admin
ORACLE_HOME=/oracle/instantclient_11_2
LD_LIBRARY_PATH=/oracle/instantclient_11_2
PATH=/oracle/instantclient_11_2
# svcadm restart apache2

Test de conexion desde PHP[editar]

<?php
echo shell_exec("env");

$sql = "select * from dual";
$connOracle = NewADOConnection("oci8");
$connOracle->Connect("ORCL-PRE", "xxxxxxxx", "xxxxxxxx");
$recordSet = $connOracle->Execute($sql);

if (!$recordSet) 
	echo $connOracle->ErrorMsg();
else
while (!$recordSet->EOF) 
{
	echo $recordSet->fields[0].' '.$recordSet->fields[1];
	$recordSet->MoveNext();
}

$connOracle->Close(); # optional
?>