Está en la página 1de 2

Tuve que obtener acceso a IBM / DB2 trabajando con ODBC / PHP en una caja de

Ubuntu recientemente. Probablemente pueda adaptar esto para la mayoría de las


otras distribuciones: Así es como lo hice funcionar:

[1] Descargue uno de los siguientes, según la versión y la arquitectura de DB2


requerida

iSeriesAccess-5.4.0-1.6.i386.rpm
iSeriesAccess-5.4.0-1.6.ppc.rpm
iSeriesAccess-5.4.0-1.6.ppc64.rpm
iSeriesAccess-5.4.0-1.6.x86_64.rpm
iSeriesAccess-6.1.0-1.0.i386.rpm
iSeriesAccess-6.1.0-1.0.ppc.rpm
iSeriesAccess-6.1.0-1.0.ppc64.rpm
iSeriesAccess-6.1.0-1.0.x86_64.rpm
Puede obtener esto desde el sitio web de IBM o desde aquí:

http://www.mmnt.net/db/0/0/public.dhe.ibm.com/as400
Luego instale el acceso del cliente IBM as400 usando algo como esto:

sudo apt-get install alien libmotif3


cd /path/to/iSeriesAccess-6.1.0-1.0.i386.rpm
sudo alien -dckv iSeriesAccess-6.1.0-1.0.i386.rpm
sudo dpkg -i iseriesaccess_6.1.0-1.0_i386.deb
[2] Instala Java (si es necesario)

sudo apt-get install sun-java6-jre


[3] Instalar UNIXODBC

sudo apt-get install unixodbc-bin


[4] Instalar PHP ODBC

sudo apt-get install php5-odbc


[5] Ldconfig Crea un archivo /etc/ld.so.conf.d/iSeriesAccess.conf con esta línea:
/opt/ibm/iSeriesAccess/lib/
Luego ejecuta lo siguiente:

sudo ldconfig
[6] Registrar conductor

sudo odbcinst -i -d -f /opt/ibm/iSeriesAccess/unixodbcregistration


[7] Prueba con algún código PHP

<?php
$user = 'SomeUser';
$pass = 'SomePass';
$Conn = odbc_connect("DRIVER={iSeries Access ODBC
Driver};DATABASE=DBNAME;SYSTEM=127.0.0.1;HOSTNAME=127.0.0.1;PORT=446;PROTOCOL
=TCPIP", $user, $pass);
if($Conn === false){
die('failed to connect');
}
$sql = "select * from database.table fetch first 10 rows only";

$result=odbc_exec($Conn,$sql);

echo '<pre>';
while(odbc_fetch_array(($result)){
print_r($result);
}
}

También podría gustarte