如何远程连接到db2数据库

How can I connect to db2 database remotely

我正在使用以下 java 应用程序连接本地主机的 db2 数据库,代码是:

String jdbcClassName="com.ibm.db2.jcc.DB2Driver";
String url="jdbc:db2://localhost:50000/sample";
String user="admin";
String password="admin";
try {
    //Load class into memory
    Class.forName(jdbcClassName);
    //Establish connection
    connection = DriverManager.getConnection(url, user, password);
    stmt = connection.createStatement();
}
catch (SQLException e) {
    e.printStackTrace();
}

问题是,当应用程序和 db2 运行 在同一台机器上时,它可以工作,但是如果 db2 数据库在另一台机器上,那么它就不能工作。我在 url 中使用的 ip 是:

String url="jdbc:db2://192.168.1.68:50000/sample";

并且出现以下错误:

com.ibm.db2.jcc.am.DisconnectNonTransientConnectionException: [jcc][t4][2043][11550][3.59.81] Exception java.net.ConnectException: Error opening socket to server /192.168.1.64 on port 50,000 with message: Connection timed out: connect. ERRORCODE=-4499, SQLSTATE=08001

如何远程连接到数据库?

检查您的私人或 public 网络防火墙是否开启??如果它是打开的,那么不要关闭它,而是创建一个入站规则,然后尝试将它与来自另一个系统的 DB2 数据库连接。