[suse-linux-s] Ayuda con ODBC AS400
Hola lista. Alguien a tenido experiencia en la configuración de ODBC con driver para conectarme a base de datos DB2 en AS400. Quiero realizar una conexión desde una página web en php desde linux. Para realizar esto tengo que configurar el ODBC para conectarme directamente desde el servidor linux al servidor AS400. Si alguien lo ha realizado por favor me indique. He buscado en internet y no encuentro algún buen tutorial dummy sobre esto. Desde ya les quedo muy agradecido por la ayuda que aporten. GRACIAS -- Para dar de baja la suscripción, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Fabián Calle wrote:
Hola lista.
Alguien a tenido experiencia en la configuración de ODBC con driver para conectarme a base de datos DB2 en AS400.
Quiero realizar una conexión desde una página web en php desde linux. Para realizar esto tengo que configurar el ODBC para conectarme directamente desde el servidor linux al servidor AS400. Si alguien lo ha realizado por favor me indique.
He buscado en internet y no encuentro algún buen tutorial dummy sobre esto.
Desde ya les quedo muy agradecido por la ayuda que aporten.
GRACIAS
Se puede utilizar el driver iSeries para Linux (basado en el driver ODBC Client Access para Windows ) que puede obtenerse de: http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/ junto con la documentación correspondiente. iSeriesODBC-x.x.x-x.xx.i386.rpm Este driver permite acceder a la base de datos del Iseries del OS/400. Además de esto, debe definirse el datasource que se usará en la aplicación configurando la entrada en el archivo odbc.ini Para realizar la configuración manual del archivo odbc.ini se deben seguir los siguientes pasos: 1. Editar el archivo odbc.ini. Para los data sources del sistema, el archivo esta ubicado normalmente en /etc/odbc.ini o /usr/local/etc/odbc.ini en SLES9 esta en /etc/unixODBC. 2. Si se desea múltiples datasources ODBC en el odbc.ini, crear secciones en el archivo para cada datasource. 3. Las diferentes opciones configurables del datasource se encuentran en:http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/guide/odbcproperties... Una guía de la configuración del datasource se encuentra en: http://www1.ibm.com/servers/eserver/iseries/linux/odbc/guide/configuration.h... http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/guide/configuration.... Los siguientes son ejemplos de archivos de configuración ODBC: Odbcinst.ini: [iSeries Access ODBC Driver] Description = iSeries Access for Linux ODBC Driver Driver = /opt/ibm/iSeriesODBC/lib/libcwbodbc.so Setup = /opt/ibm/iSeriesODBC/lib/libcwbodbc.so Threading = 2 FileUsage = 1 Odbc.ini: [iSeries_ABC] Description = iSeries ABC Driver = iSeries Access ODBC Driver System = systemABC.acme.com DefaultLibraries = Datos ConnectionType = 0 CommitMode = 1 ExtendedDynamic = 1 DefaultPkgLibrary = Para testear el datasource se puede utilizar el siguiente comando: /usr/local/isql Nombre_DSN usuario password Para evitar tener que ingresar cada vez usuario y passwd se puede definir un archivo de conexión, con man isql se explica bien la forma de hacer eso. Luego de ejecutar ese comando se visualizará en la consola: +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL> Desde ese prompt se podrán hacer consultas SQL a la base a la que conecta el datasource. Nota: Es necesario colocar en el archivo odbc.ini en la keyword “DefaultLibraries” la biblioteca donde están las tablas en el ISERIES de lo contrario da error Saludos! -- Armindo T. Díaz Argaña Jefe Div. Desarrollo de Sistemas Coop. Medalla Milagrosa Ltda. "Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas." Albert Einstein -- Para dar de baja la suscripci�n, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Muchas gracias Armindo. La primera parte de lo que me envías ya había revisado pero no tenía muy claro la configuración exacta del archivo. Con el ejemplo que me das me va a servir mucho. De nuevo gracias por la ayuda. Cualquier problema que se me presente, molestaré nuevamente a esta lista y esperando que me sepas ayudar también. Armindo Díaz Argaña escribió:
Fabián Calle wrote:
Hola lista.
Alguien a tenido experiencia en la configuración de ODBC con driver para conectarme a base de datos DB2 en AS400.
Quiero realizar una conexión desde una página web en php desde linux. Para realizar esto tengo que configurar el ODBC para conectarme directamente desde el servidor linux al servidor AS400. Si alguien lo ha realizado por favor me indique.
He buscado en internet y no encuentro algún buen tutorial dummy sobre esto.
Desde ya les quedo muy agradecido por la ayuda que aporten.
GRACIAS
Se puede utilizar el driver iSeries para Linux (basado en el driver ODBC Client Access para Windows ) que puede obtenerse de: http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/ junto con la documentación correspondiente. iSeriesODBC-x.x.x-x.xx.i386.rpm Este driver permite acceder a la base de datos del Iseries del OS/400.
Además de esto, debe definirse el datasource que se usará en la aplicación configurando la entrada en el archivo odbc.ini Para realizar la configuración manual del archivo odbc.ini se deben seguir los siguientes pasos: 1. Editar el archivo odbc.ini. Para los data sources del sistema, el archivo esta ubicado normalmente en /etc/odbc.ini o /usr/local/etc/odbc.ini en SLES9 esta en /etc/unixODBC. 2. Si se desea múltiples datasources ODBC en el odbc.ini, crear secciones en el archivo para cada datasource. 3. Las diferentes opciones configurables del datasource se encuentran en:http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/guide/odbcproperties...
Una guía de la configuración del datasource se encuentra en: http://www1.ibm.com/servers/eserver/iseries/linux/odbc/guide/configuration.h... http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/guide/configuration....
Los siguientes son ejemplos de archivos de configuración ODBC:
Odbcinst.ini: [iSeries Access ODBC Driver] Description = iSeries Access for Linux ODBC Driver Driver = /opt/ibm/iSeriesODBC/lib/libcwbodbc.so Setup = /opt/ibm/iSeriesODBC/lib/libcwbodbc.so Threading = 2 FileUsage = 1
Odbc.ini: [iSeries_ABC] Description = iSeries ABC Driver = iSeries Access ODBC Driver System = systemABC.acme.com DefaultLibraries = Datos ConnectionType = 0 CommitMode = 1 ExtendedDynamic = 1 DefaultPkgLibrary =
Para testear el datasource se puede utilizar el siguiente comando: /usr/local/isql Nombre_DSN usuario password
Para evitar tener que ingresar cada vez usuario y passwd se puede definir un archivo de conexión, con man isql se explica bien la forma de hacer eso.
Luego de ejecutar ese comando se visualizará en la consola: +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL>
Desde ese prompt se podrán hacer consultas SQL a la base a la que conecta el datasource. Nota: Es necesario colocar en el archivo odbc.ini en la keyword “DefaultLibraries” la biblioteca donde están las tablas en el ISERIES de lo contrario da error
Saludos!
Armindo, te molesto nuevamente en el tema de conexión ODBC AS400 Ya me conecto bien (como explicas en el ejemplo) a la base de datos. Sale el cuadro que indicas, el problema está que cuando quiero realizar la consulta desde la línea de comandos que me queda luego de testear el ODBC. Al momento de realizar la consulta me da el siguiente error: [ISQL] ERROR: Could not SQLPrepare Gracias por la ayuda Fabián Calle escribió:
Muchas gracias Armindo.
La primera parte de lo que me envías ya había revisado pero no tenía muy claro la configuración exacta del archivo. Con el ejemplo que me das me va a servir mucho.
De nuevo gracias por la ayuda. Cualquier problema que se me presente, molestaré nuevamente a esta lista y esperando que me sepas ayudar también.
Armindo Díaz Argaña escribió:
Fabián Calle wrote:
Hola lista.
Alguien a tenido experiencia en la configuración de ODBC con driver para conectarme a base de datos DB2 en AS400.
Quiero realizar una conexión desde una página web en php desde linux. Para realizar esto tengo que configurar el ODBC para conectarme directamente desde el servidor linux al servidor AS400. Si alguien lo ha realizado por favor me indique.
He buscado en internet y no encuentro algún buen tutorial dummy sobre esto.
Desde ya les quedo muy agradecido por la ayuda que aporten.
GRACIAS
Se puede utilizar el driver iSeries para Linux (basado en el driver ODBC Client Access para Windows ) que puede obtenerse de: http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/ junto con la documentación correspondiente. iSeriesODBC-x.x.x-x.xx.i386.rpm Este driver permite acceder a la base de datos del Iseries del OS/400.
Además de esto, debe definirse el datasource que se usará en la aplicación configurando la entrada en el archivo odbc.ini Para realizar la configuración manual del archivo odbc.ini se deben seguir los siguientes pasos: 1. Editar el archivo odbc.ini. Para los data sources del sistema, el archivo esta ubicado normalmente en /etc/odbc.ini o /usr/local/etc/odbc.ini en SLES9 esta en /etc/unixODBC. 2. Si se desea múltiples datasources ODBC en el odbc.ini, crear secciones en el archivo para cada datasource. 3. Las diferentes opciones configurables del datasource se encuentran en:http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/guide/odbcproperties...
Una guía de la configuración del datasource se encuentra en: http://www1.ibm.com/servers/eserver/iseries/linux/odbc/guide/configuration.h...
http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/guide/configuration....
Los siguientes son ejemplos de archivos de configuración ODBC:
Odbcinst.ini: [iSeries Access ODBC Driver] Description = iSeries Access for Linux ODBC Driver Driver = /opt/ibm/iSeriesODBC/lib/libcwbodbc.so Setup = /opt/ibm/iSeriesODBC/lib/libcwbodbc.so Threading = 2 FileUsage = 1
Odbc.ini: [iSeries_ABC] Description = iSeries ABC Driver = iSeries Access ODBC Driver System = systemABC.acme.com DefaultLibraries = Datos ConnectionType = 0 CommitMode = 1 ExtendedDynamic = 1 DefaultPkgLibrary =
Para testear el datasource se puede utilizar el siguiente comando: /usr/local/isql Nombre_DSN usuario password
Para evitar tener que ingresar cada vez usuario y passwd se puede definir un archivo de conexión, con man isql se explica bien la forma de hacer eso.
Luego de ejecutar ese comando se visualizará en la consola: +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL>
Desde ese prompt se podrán hacer consultas SQL a la base a la que conecta el datasource. Nota: Es necesario colocar en el archivo odbc.ini en la keyword “DefaultLibraries” la biblioteca donde están las tablas en el ISERIES de lo contrario da error
Saludos!
-- Para dar de baja la suscripci�n, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Fabián Calle wrote:
Armindo, te molesto nuevamente en el tema de conexión ODBC AS400
Ya me conecto bien (como explicas en el ejemplo) a la base de datos. Sale el cuadro que indicas, el problema está que cuando quiero realizar la consulta desde la línea de comandos que me queda luego de testear el ODBC. Al momento de realizar la consulta me da el siguiente error:
[ISQL] ERROR: Could not SQLPrepare
Gracias por la ayuda
Ese error puede deberse a varios motivos... dependiendo de la consulta que sometiste, puede ser una tabla o campo que no existen o un error en la sintaxis SQL o tal vez hayas olvidado incluir el esquema o biblioteca en el caso del iseries. Saludos! -- Armindo T. Díaz Argaña "Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas." Albert Einstein -- Para dar de baja la suscripci�n, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Muchas gracias Armindo. Realicé la prueba desde conexión con php y si funciona muy bien. Gracias por tu ayuda. Me fue muy útil. -- Saludos Armindo Díaz Argaña escribió:
Fabián Calle wrote:
Armindo, te molesto nuevamente en el tema de conexión ODBC AS400
Ya me conecto bien (como explicas en el ejemplo) a la base de datos. Sale el cuadro que indicas, el problema está que cuando quiero realizar la consulta desde la línea de comandos que me queda luego de testear el ODBC. Al momento de realizar la consulta me da el siguiente error:
[ISQL] ERROR: Could not SQLPrepare
Gracias por la ayuda
Ese error puede deberse a varios motivos... dependiendo de la consulta que sometiste, puede ser una tabla o campo que no existen o un error en la sintaxis SQL o tal vez hayas olvidado incluir el esquema o biblioteca en el caso del iseries.
Saludos!
participants (2)
-
Armindo Díaz Argaña
-
Fabián Calle