各位大侠:
现在需要在一台hp pa的服务器中,使用unixODBC连接db2 v8.1(安装在AIX中)。
目前hp-unix的操作系统版本为11.23,使用的unixODBC为32位的,使用的ODBC驱动程序为从IBM网站上下载的:v9fp7_hppa_db2driver_for_odbc_cli_32.tar.Z,db2 v8.1为64位的(db2中有一个test的数据库)。
在进行了相关的配置之后,在用isql进行测试时,总是出现以下错误:
$ isql -v test
[S1000][unixODBC][IBM][CLI Driver] SQL1042C An unexpected system error occurred. SQLSTATE=58004
用户配置文件.profile:
export ODBCINI=/etc/odbc.ini
export ODBCSYSINI=/etc
export DB2CLIINIPATH=/app/clidriver/cfg
/app/clidriver/cfg/db2cli.ini
[test]
Protocol=TCPIP4
Port=50000
Database=test
Hostname=192.168.2.1
UID=db2inst1
PWD=db2inst1
autocommit=0
TableType="'TABLE','VIEW','SYSTEM TABLE'"
/etc/odbc.ini:
[test]
Driver = test
Description = db2 odbc
/etc/odbcinst.ini
[test]
Description = db2 odbc
Driver = /app/clidriver/lib/libdb2.sl
FileUsage = 1
DontDLClose = 1
$ ldd /app/clidriver/lib/libdb2.sl
/usr/lib/libpthread.1 => /usr/lib/libpthread.1
/usr/lib/libc.2 => /usr/lib/libc.2
/usr/lib/libdld.2 => /usr/lib/libdld.2
/usr/lib/libc.2 => /usr/lib/libc.2
/usr/lib/libm.2 => /usr/lib/libm.2
/usr/lib/libsec.2 => /usr/lib/libsec.2
/usr/lib/libm.2 => /usr/lib/libm.2
/usr/lib/libcl.2 => /usr/lib/libcl.2
/usr/lib/libisamstub.1 => /usr/lib/libisamstub.1
/usr/lib/libdld.2 => /usr/lib/libdld.2
/usr/lib/libstd.2 => /usr/lib/libstd.2
/usr/lib/libstream.2 => /usr/lib/libstream.2
/usr/lib/libCsup.2 => /usr/lib/libCsup.2
------解决方案--------------------------------------------------------
isql具体执行什么不知道 看样子你要找个64位的驱动去测试下
------解决方案--------------------------------------------------------
64位的db2 ODBC驱动也已经测试过了,也是出错,不过错误不同,错误为:
[IM005][unixODBC][Driver Manager]Driver's SQLAllocHandle on SQL_HANDLE_DBC failed
------解决方案--------------------------------------------------------
那就不太清楚了 具体参数 端口这些都没有问题吗?
------解决方案--------------------------------------------------------
参数与端口肯定都没有问题,db2数据库也肯定正常,我在linux下用unixodbc与db2 odbc for linux的驱动去连接db2数据库,没有任何问题
------解决方案--------------------------------------------------------