我正在尝试使用jdbc驱动程序连接MS SQL服务器。我收到了以下错误;
Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall
我认为我的连接网址存在问题。这是我的连接网址;
jdbc:sqlserver://50.50.50.50\MYINSTANCE:1433;
编辑:我可以毫不费力地将这个sql server与某个客户端应用程序(HeidiSQL)连接起来。
Network type: Microsoft SQL server (tcp/ip)
Hostname:50.50.50.50\MYINSTANCE
Port: 1433
username:...
password:...
下面的行抛出异常,我可以毫无问题地连接其他一些sql server。(它们没有任何实例名称)
DriverManager.getConnection(connectionUrl, username, password);
答案 0 :(得分:1)
SQL Server实例MYINSTANCE
可能没有侦听端口1433.通常,连接URL将包含实例名称或端口号,而不是两者。当两者都提供时,必须优先考虑。
如果为HeidiSQL指定Port: 1433
允许您连接,那么HeidiSQL似乎优先于实例名称。 SQL Server JDBC驱动程序执行相反的操作:当同时显示实例名称和端口号时,它将优先于端口号。
因此,您应该可以使用以下网址进行连接:
jdbc:sqlserver://50.50.50.50;instanceName=MYINSTANCE
答案 1 :(得分:0)
检查是否没有规则阻止TCP连接 在cmd上做
telnet 127.0.0.1 1433
并检查您的SQL服务器配置TCP端口是否正确。