Chinaunix首页 | 论坛 | 博客
  • 博客访问: 346138
  • 博文数量: 38
  • 博客积分: 2432
  • 博客等级: 少校
  • 技术积分: 504
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-20 09:49
个人简介

GBase 8t/Informix数据库技术支持。

文章分类

全部博文(38)

文章存档

2011年(2)

2010年(14)

2009年(11)

2008年(11)

分类: DB2/Informix

2010-09-28 15:11:52

使用的系统是RHEL5.3,数据库版本是IDS V11.50UC6(已选安装CSDK V3.5)

新建一用户dbuser用于测试ODBC,使用的shell是bash

1.配置dbuser用户环境包含以下内容
INFORMIXDIR
PATH             --PATH中应包含${INFORMIXDIR}/bin
INFORMIXSQLHOSTS --(可选,不配置使用默认的${INFORMIXDIR}/etc/sqlhosts)

示例:
INFORMIXDIR=/opt/informix
PATH=$PATH:${INFORMIXDIR}/bin
INFORMIXSQLHOSTS=${INFORMIXDIR}/etc/sqlhosts

export INFORMIXDIR PATH INFORMIXSQLHOSTS

2.配置odbcinst.ini文件
拷贝${INFORMIXDIR}/etc/odbcinst.ini到dbuser用户目录下
修改odbcinst.ini文件中的Driver、Setup,将相应的目录改成${INFORMIXDIR}具体所有的目录即可 
Driver=/opt/informix/lib/cli/iclit09b.so
Setup=/opt/informix/lib/cli/iclit09b.so

3.配置odbc.ini文件
拷贝${INFOMRIXDIR}/etc/odbc.ini文件到dbuser用户目录下
修改以下具体的内容

[ODBC Data Sources]
Infdrv1=IBM INFORMIX ODBC DRIVER    --这里定义Infdrv1,类似于windows中的DSN名称
Infdrv2=IBM INFORMIX ODBC DRIVER
;
; Define ODBC Database Driver's Below - Driver Configuration Section
;
[Infdrv1]                           --DSN为Infdrv1项
Driver=/opt/informix/lib/cli/iclit09b.so   --修改路径为具体位置
Description=IBM INFORMIX ODBC DRIVER
Database=testdb                            --数据库名称
LogonID=informix                           --登陆数据库的用户名 
pwd=informix                               --登陆数据库用户的密码
Servername=ids_online_net                  --数据库服务名INFORMIXSERVER
[Infdrv2]                           --DSN为Infdrv2项,略
......

[ODBC]
;uncomment the below line for UNICODE connection
;UNICODE=UCS-4
;
; Trace file Section
;
Trace=0
TraceFile=/tmp/odbctrace.out
InstallDir=/opt/informix            --修改为具体的CSDK安装目录
TRACEDLL=idmrs09a.so

在用户环境中增加
ODBCINI=${HOME}/odbc.ini
export ODBCINI

4.配置.netrc文件
在用户目录下编写.netrc文件,格式如下:
machine <数据库所在的服务器名或者IP> login <用户名> password <用户密码>

示例:
machine rhel53 login informix password informix

5.配置SQLHOSTS文件,这里使用正在使用的sqlhosts文件,示例如下:
ids_online_net  onsoctcp        rhel53          9105

6.用户环境里增加LD_LIBRARY_PATH
LD_LIBRARY_PATH=$INFORMIXDIR/lib:$INFORMIXDIR/lib/cli:$INFORMIXDIR/lib/esql
export LD_LIBRARY_PATH

至此,ODBC就配置完成了。

测试ODBC连接:
使用informix在${INFORMIXDIR}/demo/cli的目录下,通过catalog.c生成catalog可执行文件
make catalog
然后拷贝回dbuser的用户目录下,
./catalog Infdrv1                --Infdrv1即上面配置的DSN

在类似以下的输出,即表示ODBC连接是成功的~
Using specified DSN : Infdrv1
STEP 1 done...connected to database
Table Name tt
        Column: a
        Column: b
        Column: c
        Column: d
STEP 2 done...catalog information obtained from the database


Hit to terminate the program...

阅读(3307) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~