Consultor Eletrônico



Kbase 47782: Testar Conexão ODBC Informix - Linux
Autor   Rodrigo Ritzmann - CAT
Acesso   Público
Publicação   8/6/2014
Testar Conexão ODBC Informix - Linux

Em algumas instalações podemos validar a conexão ODBC utilizando a ferramenta isql, proveniente do pacote unixODBC. Também é possível testar comandos SQL (executados pela aplicação), a partir dele, isolando assim erros oriundos do driver ODBC. Abaixo seguem os passos utilizados para realizar tal atividade:

Ambiente:

Red Hat Enterprise Linux Server release 5.7 (Tikanga)
IBM/Informix-Client SDK Version 3.70.FC2
x86_64


· Instalar pacote unixODBC do Linux (http://www.unixodbc.org/);
· Configurar arquivo /etc/odbc.ini (Server deve estar cadastrado em $INFORMIXDIR/etc/sqlhosts):

[logix]
Driver=Informix
Server=logix10soc
Database=v1002t
CLIENT_LOCALE=en_us.8859-1
DB_LOCALE=en_us.8859-1
TRANSLATIONDLL=/opt/informix/lib/esql/igo4a304.so

· Configurar arquivo /etc/odbcinst.ini:

[Informix]
Description=Informix
Driver=/opt/informix/lib/cli/libifcli.so
APILevel=1
ConnectFunctions=YYY
DriverODBCVer=03.00
FileUsage=0
SQLLevel=1
smProcessPerConnect=Y

· Configurar /etc/ld.so.conf:

/opt/informix/lib
/opt/informix/lib/esql
/opt/informix/lib/cli

· Executar:

ldconfig

· Setar variáveis ODBCINI:

export ODBCINI=/etc/odbc.ini

· Setar variável INFORMIXDIR:

export INFORMIXDIR=/opt/informix

· Executar isql (/usr/bin/isql DSN UID PWD):

Ex: /usr/bin/isql logix informix informix

· Interface:

isql logix informix informix
+---------------------------------------+
| Connected!
|
| sql-statement
| help [tablename]
| quit
|
+---------------------------------------+

SQL> select * from sysusers;

+---------------------------------+---------+---------+-----------------+---------------------------------+
| username | usertype| priority| password | defrole |
+---------------------------------+---------+---------+-----------------+---------------------------------+
| root | D | 9 | | |
| informix | D | 5 | | |
| public | R | 5 | | |
+---------------------------------+---------+---------+-----------------+---------------------------------+

SQLRowCount returns -1

3 rows fetched

SQL> quit