如何解决JDBC错误,读取登录前响应:在其他环境中部署jar时,读取超时
在此情况下,我花了一整天的时间来弄清楚,希望能对此有所帮助。
我有一个.jar要执行,需要连接到targetIpAddress:1433上的MSSQL数据库。 我的.jar文件可在我自己的PC和远程PC上使用,但不能在目标PC上使用。 不同的是我的电脑和远程电脑使用JAVA 11,而目标电脑使用1.7.0_17 jre。 因此,我决定将jdk1.7与支持jdk1.7的jdbc 4.1(sqljdbc41)一起使用,以重建新的jar。 尽管如此,结果没有改变。我可以在我的PC和远程PC上运行它,但是不能在目标PC上运行它。
我已经确保关闭了防火墙,并且为端口1433启用了TCP,因为我可以从目标计算机“远程登录targetIpAddress 1433”,而另一台远程计算机可以使用相同的代码连接数据库。 MSSQL版本为15.0.2000。它在Window Server 2019上运行。 我要执行.jar的目标计算机使用1.7.0_17 jre。
这是我的代码
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
DriverManager.setLoginTimeout(0);
return DriverManager.getConnection("jdbc:sqlserver://targetIpAddress\\MSSQLSERVER:1433;user=sa;password=password;databaseName=databaseName");
这是错误
Error reading prelogin response: Read timed out
你们知道这个案件出了什么问题吗? 感谢您的指导,非常感谢您的帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。