我有一个部署在DMZ服务器上的Java Web应用程序。我已经为Web应用程序中的本地机器数据库连接建立编写了以下代码
url= jdbc:microsoft:sqlserver://" + ipAddress + ":1433;databaseName=" + loginForm.getDbName();
conn = DriverManager.getConnection(url, loginForm.getDbUserName(), loginForm.getDbPWD());
现在我通过互联网访问应用程序并传递本地机器的ipAddress,本地机器dB,用户名,密码。
但得到以下错误:
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
答案 0 :(得分:1)
你可以尝试一些事情:
该错误似乎表明该服务器是可联系的,但它没有正在侦听端口,或者它拒绝与您通话 - 您是否检查过服务器日志?
答案 1 :(得分:1)
Web应用程序无法与指定的数据库建立TCP / IP连接。
IP地址在ipAddress
变量中的计算机应该可以从Web应用程序服务器访问(通过网络)。
您可以从 Web应用程序计算机远程登录ipAddress
的1433端口吗?
检查是否:
此外,当您似乎从表单输入ipAddress
时,请检查最终的拼写错误和String
次转化。