从Java共享LAN上的数据库时DB2 Express-C连接中的问题

时间:2012-04-17 06:31:24

标签: java 64-bit db2

我已经安装了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数据库共享的问题。上述机制正常运行。)

1 个答案:

答案 0 :(得分:0)

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