IIB - 通过mqsicvp连接到DB2 ODBC DSN时的DLL初始化错误

时间:2017-10-11 14:12:41

标签: dll db2 odbc

使用mqsicvp测试从IBM Integration Console到ODBC数据源的连接时出现以下错误。

C:\Program Files\IBM\IIB\10.0.0.9>mqsicvp DEFAULTBRK -n MSAPP -v
BIP8299I: User 'db2admin' from security resource name 'odbc::MSAPP' will be used for the connection to datasource 'MSAPP'.

BIP2393E: Database error: ODBC return code '-1' from data source ''MSAPP'' using ODBC driver manager ''odbc32.dll''.
The integration node received an error when processing a database operation. The ODBC return code was '-1'. See the following messages for information obtained from the database about this error.
Use the following messages to determine the cause of the error. Typical problems are an incorrect data source, or table names. Correct either the database or the integration node configuration. Use the mqsicvp command to test connectivity to this database.
BIP2322E: Database error: SQL State ''IM003''; Native Error Code '160'; Error Text ''Specified driver could not be loaded due to system error  1114: A dynamic link library (DLL) initialization routine failed. (IBM DB2 ODBC DRIVER - DB2COPY1, C:\PROGRA~1\IBM\SQLLIB\BIN\DB2CLIO.DLL).''.
The error has the following diagnostic information:     SQL State             ''IM003''     SQL Native Error Code '160'     SQL Error Text        ''Specified driver could not be loaded due to system error  1114: A dynamic link library (DLL) initialization routine failed. (IBM DB2 ODBC DRIVER - DB2COPY1, C:\PROGRA~1\IBM\SQLLIB\BIN\DB2CLIO.DLL).''
This message may be accompanied by other messages describing the effect on the integration node itself. Use the reason identified in this message with the accompanying messages to determine the cause of the error. Use the mqsicvp command to test connectivity to this database.

BIP8040E: Unable to connect to the database.
The database cannot be accessed with the specified user Id and password pair.
- Check that the database is running.
 - Check that the database has an adequate number of database connections available for use.
 - On Windows, check that an ODBC connection has been created.
 - On systems that use $ODBCINI, check that the file pointed to by $ODBCINI has been correctly updated.
 - On z/OS check the BIPDSNAO member of the component's dataset, and check the DB2 64bit ODBC driver (DSNAO64C) is in the STEPLIB.
 - Use mqsisetdbparms to set the password to the correct value and try again.

软件:Windows 10 / IIB 10 / DB2服务器

重现的步骤:

  1. 以系统DSN的形式设置与新DB2数据库的ODBC(64位)连接(使用IBM DB2 ODBC驱动程序版本11.01.2020.1393)
  2. 测试连接是否可以从ODBC数据源管理员应用程序
  3. 进行
  4. 使用IBM Integration Console中的mqsisetdbparms设置用户和 密码
  5.   

    mqsisetdbparms DEFAULTBRK -n odbc :: MSAPP -u uid -p pwd

    1. 停止并启动经纪人
    2. 使用mqsicvp测试连接性
    3.   

      mqsicvp DEFAULTBRK -n MSAPP

      错误中提到的DLL位于C:\ PROGRA~1 \ IBM \ SQLLIB \ BIN,这已包含在PATH变量中。

      我不确定为什么使用驱动程序管理器odbc32.dll - 我认为这是一个32位版本。但是,如果我尝试在32位ODBC数据源管理员应用程序中创建DSN,则mqsicvp将失败,并显示架构不匹配的错误。

2 个答案:

答案 0 :(得分:1)

建议您从IBM下载针对错误IT23069的修复程序。它(间接)来自this page,最终重定向到IBM fix central。为我工作。

答案 1 :(得分:0)

最新的开发人员版工具包10.0.0.12似乎解决了这个问题。