Instalar PDO_INFORMIX EN Debian Lenny

Suponiendo que ya tenemos php y apache instalado…. y ademas el php-devel..

Bajamos el software necesario

PDO_INFORMIX

wget http://www.pecl.php.net/get/PDO_INFORMIX-1.0.0.tgz

CLIENTSDK (Este lo bajamos de la pagina de IBM)

Estoy bajando el clientsdk 3.50 para linux

wget https://www6.software.ibm.com/sdfdl/2v2/regs2/mstadm/informix/Xa.2/Xb.YBTN_DlRXFKwTCASDUCuTIzG9nBE2ljgzDX5wOgGgA/ Xc.clientsdk.3.50.UC6DE.LINUX.tar/Xd./Xf.LPr.D1vk/Xg.5460083/Xi.ifxdl/XY.regsrvs/XZ.5IIqhcVs4h1rpp-U1CfrE01dxuA/clientsdk.3.50.UC6DE.LINUX.tar

Descomprimimos el software en alguna carpeta temporal..

(PDO)

tar zxf PDO_INFORMIX-1.0.0.tgz

(Client SDK)

tar zxf clientsdk.3.50.UC6DE.LINUX.tar

Necesitamos crear un grupo y un usuario de nombre informix (ambos)

groupadd informix

useradd -g informix -p passwordQueQuieras

El home del usuario informix debe ser el mismo donde se instalara el cliente de informix (csdk)
por default se instala en /opt/IBM, pero lo dejaremos en /opt/informix

Puedes especificarle el directorio home al usuario al crearlo, o bien cambiarlo en
el archivo /etc/passwd

Ejemplo, esta es la linea del usuario informix en el archivo /etc/passwd

informix:x:1002:1003::/opt/informix:/bin/sh

/opt/informix es el directorio home para este usuario, si desearas cambiarlo, solo edita esa linea.

Creamos el directorio donde se instalara el clientsdk de informix

mkdir /opt/informix

Hacemos dueño a informix de su carpeta.

chown informix.informix /opt/informix
chown informix.informix /opt/informix

/ETC/PROFILE

En /etc/profile damos de alta las variables de ambiente de para el directorio de informix

INFORMIXDIR=/opt/informix
export INFORMIXDIR

PATH=$PATH:$INFORMIXDIR/bin
export PATH

despues de guardar /etc/profile

hacemos un source /etc/profile para refrescar las variables

Ahora vamos a la carpeta donde bajamos el source del pdo y del cliente sdk

y los descomprimimos

tar -xvf PDO_INFORMIX-1.0.0.tgz
tar -xvf clientsdk.3.50.UC6DE.LINUX.tar

Instalamos el clientsdk

nos vamos a la carpeta descomprimida de clientsdk

y tecleamos

./installclientsdk

Cuando nos pida en que directorio instalar, nos dara por default /opt/IBM
pero como la variable INFORMIXDIR la apuntamos a /opt/informix, estas deben de coincidir
asi que hay que cambiar la ruta propuesta par que quede instalado en /opt/informix.

Ahora sigue compilar el modulo PDO_INFORMIX

nos vamos a la carpeta donde descomprimimos el PDO_INFORMIX
y tecleamos primeramente el phpize

phpize

Si el anterior comando te marca que el phpize no existe, entonces debes de instalar el php-devel

apt-get install php-devel

Reinicia tu Debian…

vuelve a entrar a la carpeta donde descomprimiste el PDO_INFORMIX

teclea nuevamente phpize

luego teclea esto:

./configure

Es posible que aqui te marque un error de que no encuentra el php_pdo_driver.h en determinada linea, si te lo marca, entonces
edita el archivo configure y ubica las lineas siguientes
:

elif test -f $prefix/include/php/ext/pdo/php_pdo_driver.h; then
pdo_inc_path=$prefix/include/php/ext
else
as_fn_error “Cannot find php_pdo_driver.h.” “$LINENO” 5

Cambialas por:

elif test -f $prefix/include/php5/ext/pdo/php_pdo_driver.h; then
pdo_inc_path=$prefix/include/php5/ext
else
as_fn_error “Cannot find php_pdo_driver.h.” “$LINENO” 5

Observa que unicamente cambiamos la carpeta php por php5

Guarda y vuelve a intentarlo

./configure

make

make install

Si no te marco ningun error, entonces ya terminamos de compilar este modulo

te debio haber generado un archivo llamado asi: pdo_informix.so en la carpeta modules de la carpeta actual.

Ahora hay que copiar el archivo o modulo pdo_informix.so a la carpeta donde tengas instalados
los modulos dinamicos, en mi debian los tengo en /usr/lib, si no sabes donde estan dichos modulos
entonces revisa tu archivo php.ini y busca la linea extension_dir, el archivo php.ini, comunmente en debian esta en la ruta /etc/php5/apache2

Una vez que hayas copiado tu modulo a la carpeta de modulos, lo que sigue es editar el archivo PDO.INI paraa
especificar la extension de pdo_informix.so

el archivo pdo.ini se encuentra en: /etc/php5/conf.d/pdo.ini

Editalo y agrega esta linea -> extension=pdo_informix.so

Quedaria algo asi como esto:

; configuration for php PDO module
extension=pdo.so
extension=pdo_informix.so

ahora vamos a dar de alta los servicios en el archivo /etc/services

Agrega al final los puertos 1526 y 1527. ejemplo:

# Local services

aplicaexec 1526/tcp

sqlexec2 1527/tcp

Tambien necesitamos editar el archivo sqlhosts ubicado en /opt/informix/etc/sqlhosts

Editalo y agrega la siguiente configuracion:

nombredeinstancia onsoctcp ipdetuservidor sqlexec2

nombredeinstancia onsoctcp ipdetuservidor aplicaexec

nombredeinstancia= nombre de la instancia a la que te conectaras en informix
onsoctcp es el protocolo
slqexec2 es el nombre del serviciio en linux, especificado anteriormente en /etc/services

Aun nos falta especificar las variables de ambiente en apache, para el caso de Debian, estas se definen en el archivo envvars, el cual se encuentra en la ruta:

/etc/apache2/envvars

Editalo y agrega las siguientes lineas:

INFORMIXDIR=/opt/informix
export INFORMIXDIR

DB_LOCALE=es_es.8859-1
export DB_LOCALE

Parece ser que ya esta todo listo, procedamos a LA VERIFICACION DE CONFIGURACION

Vamos a verificar que se haya cargado el modulo pdo_informix

para ello puedes crear un script de php con el siguiente contenido:

nano miConfiguracion.php

Ejecutalo desde un navegador y busca la seccion de PDO, debe aparecer asi :

PDO drivers => informix, mysql, odbc, sqlite

pdo_informix

pdo_informix support => enabled

En la seccion de Environment, debe de aparecerte la variable de ambiente INFORMIXDIR, ASI:

Seccion de Environment

Te debe mostrar la variable de ambiente de INFORMIXDIR

INFORMIXDIR => /opt/IBM/informix

Esta info fue obtenida con phpinfo();

Si es asi, entonces ya quedo listo tu pdo_informix en debian lenny.

4 comentarios en “Instalar PDO_INFORMIX EN Debian Lenny

  1. Excelente guia…
    Nunca antes había comentado algún tuto pero este vale la pena al igual que muchos mas, la verdad me costo demasiado trabajo con aterioridad realizar esta instalacion, sin embargo ahora esta lista😀

    slds

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s