0

我已经安装了 DB2 Express-C 9.7.5。它安装在 Windows 7(64 位)机器上,我创建了一个数据库 TESTXA。我的应用程序中使用的连接机制是:

Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance();
Connection conn = DriverManager.getConnection("jdbc:db2://ABCCOMPUTER:50000/TESTXA", db2UserName, db2PassWord);

使用上述 Java 代码在 ABCCOMPUTER 上成功创建了连接。但是,当我使用相同的 Java 代码通过 LAN 从另一个系统创建 DB2 连接时,例如,具有相同 db2UserName/db2PassWord 的 XYZCOMPUTER(Windows 7 机器)会引发异常:

com.ibm.db2.jcc.am.io: DB2 SQL Error: SQLCODE=-204, SQLSTATE=42704, SQLERRMC=USER.XA4APP, DRIVER=3.57.82
Which indicates "Connection authorization failure occurred.  Reason: User ID or Password invalid."

在我的应用程序中,我需要在 DB2 中创建一个可以从 LAN 上的其他系统访问的数据库。应该在 XYZCOMPUTER 上查看什么来解决此问题?

(仅供参考:这不是 Windows XP 机器中 DB2 数据库共享的问题。上述机制正常工作。)

4

1 回答 1

0

这应该不是 Java JDBC的问题。这一定是 Windows 7 安全问题的情况,因为无论是您自己的系统还是远程系统,DB2 类型 4 驱动程序都使用相同格式的连接字符串。您可以尝试以“以管理员身份运行”运行您的应用程序/工具。

于 2012-04-23T10:35:49.370 回答