Instalacion y Configuracion apache, php con db2 y soporte con odbc
\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
Advertencia
Este documento es privado y es de uso exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra le ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal.
Descripción
DB2 es una marca comercial, propiedad de IBM, bajo la cual se comercializa el sistema de gestión de base de datos relacional de dicha compañía, así como otras herramientas relacionadas encuadradas en la misma línea de producto.
La intension de este documento es poder hacer consultas a una base de datos db2 que se encuentra en otro equipo (as400) proveido por IBM.
Requisitos
- compat-libstdc++-33-3.2.3-47.3
- flex i386 2.5.4a-33
- gcc-c++ i386 3.4.6-3
- libxml2-devel i386 2.6.16-6
- (v9fp1_linux_client.tar.gz) (proveido por IBM)
Se descarga el cliente de la siguiente URL: (http://www-111.ibm.com/software/mt/translate?url=http://www-306.ibm.com/software/data/db2/udb/support/downloadv9_linux.html&ACCEPT_MT_DISCLAIMER=YES&language=Spanish)
- httpd-2.2.3.tar.gz (apache2)
Se descarga los fuentes de la siguiente URL:
(http://httpd.apache.org/download.cgi)
- php-5.2.0.tar.gz (php5)
Se descargar los fuentes de la siguiente URL:
(http://www.php.net/downloads.php)
Procedimiento
- Bajar previamente los fuentes de ibm, apache y php para integrarlos despues.
INSTALAR CLIENTE IBM
- Crear un directorio con el nombre ibm en /usr/local
# mkdir /usr/local/ibm
- Descomprimir el cliente de IBM que se encuentra en el directorio skina en la siguiente ruta /home/skina/addon/db2client
# tar -xvzf v9fp1_linux_client.tar.gz
- Desplazarse hasta la siguiente ruta (/home/skina/addon/db2client/client/disk1) y ejecutar el script db2_install para instalar la aplicacion.
La ejecucion de este script le pedira donde lo va a instalar; por estandares de skina se deja en /usr/local/ibm. Para
instalarlo se ejecuta la siguiente instruccion.
# ./db2_install
Tambien le pedira que lo que va a instalar en un CLIENT y que digite esa palabra para continuar con el proceso de la instalacion
Por ultimo el deja instalado el cliente proveido por IBM en la ruta que se le dijo anteriormente.
INSTALAR APACHE2
- Crear un directorio con el nombre apache2 en /usr/local
# mkdir /usr/local/apache2
- Descomprimir apache2 en /usr/local
# tar -xvzf httpd-2.2.3.tar.gz
- Digital la siguiente instruccion para compilar
# ./configure --prefix=/usr/local/apache2 --enablemods=shared-all --enable-modules=all --enable-version
# make
# make install
INSTALAR PHP5
- Crear un directorio con el nombre php5 en /usr/local
# mkdir /usr/local/php5
- Descomprimir php en /usr/local/php5
# tar -xvzf php-5.2.0.tar.gz
- instalar flex
# yum install flex
- instalar libxml2-devel
# yum install libxml2-devel
- instalar gcc-c++
# yum install gcc-c++
- Compilar php5 digitando la siguiente instruccion
# ./configure –prefix=/usr/local/php5 –enable-pdo_odbc=ibm-db2,/usr/local/ibm/db2/V9.1 –with-apxs2=/usr/local/apache2/bin/apxs
# make
# make install
- Copiar el archivo php.ini-recommended al siguiente directorio (/usr/local/php5/etc) y renombrar el archivo
# cp -p php.ini-recommended /usr/local/php5/etc
# mv php.ini-recommended php.ini
B. Configuración
Configurar apache para que php interprete en la siguiente ruta y para que no cargue dos modulos que no
son necesarios.
# vi /usr/local/apache2/conf/httpd.conf
- Se comentarea la siguientes dos lineas en el archivo httpd.conf.
LoadModule authn_dbd_module modules/mod_authn_dbd.so
LoadModule dbd_module modules/mod_dbd.so
- Se adicionan las siguientes lineas para que apache interprete php en (/usr/local/apache2/conf/httpd.conf).
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
- Revisar si la siguiente linea se encuentra activada
LoadModule php5_module modules/libphp5.so
- Revisar que las siguientes lineas queden de la siguiente forma.
<IfModule dir_module>
DirectoryIndex index.html index.htm
</IfModule>
Pruebas de funcionamiento
1. Colocar un archivo que se encuentre dentro del htdocs en /usr/local/apache2/htdocs que se llame
info.php para comprobar que apache interprete php.
# touch info.php
El contenido del info.php debe tener lo siguiente:
_______________________
<?php phpinfo(); ?>
_______________________
2. Probar desde un navegador escribiendo la siguiente instruccion (http://localhost/info.php) y verificar que
muestre la informacion de php y no codigo fuente.
3. Verificar que se encuentre habilitado las siguientes dos lineas en el archivo info.php para comprobar que efectivamente
tiene soporte para conexiones tipo db2 y para que permita la conexion al as400.
'–enable-pdo_odbc=ibm-db2,/usr/local/ibm/db2/V9.1'
'–with-apxs2=/usr/local/apache2/bin/apxs'.
4. Colocar un archivo se se encuentre dentro del htdocs en /usr/local/apache2/htdocs que se llame
prueba.php para comprobar que desde el servidor linux pueda realizar la conexion al as400 proveido
por IBM.
El contenido del archivo prueba.php debe tener lo siguiente:
_______________________
<?php
$dsn = 'Driver={IBM DB2 ODBC DRIVER};Database=(nombre_base_de_datos);Hostname=(dir_ip_as400);Port=446;Protocol=TCPIP;Uid=(usuario);Pwd=(password);';
echo “Paso 2”;
if ($dsn) {
echo “Conectado con exito.”;
}
else {
echo “Error en la conexion.”;
}
?>
_______________________
5. Probar desde un navegador escribiendo la siguiente instruccion (http://localhost/prueba.php) y verificar que
la informacion que despliega fue realizada la conexion con exito. La siguiente URL es donde se incluyo el script de conexion para realizar pruebas
(http://www.connectionstrings.com/default.aspx?carrier=ibmdb2)
Problemas
1. Si el instale_mrtg.sh no le funciona
2. Si no instala compat-libstdc++, saca un error al momento de instalar el cliente ibm.
FIN
09-Enero-2007 Luis Mauricio Gonzalez v1.0 Primera version
\t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t \t\t\t