完整错误我得到了:
与主机localhost,端口1433的TCP / IP连接失败。错误:"连接超时。验证连接属性。确保主机上正在运行SQL Server实例并接受端口上的TCP / IP连接。确保防火墙不阻止与端口的TCP连接。"。
我已经使用端口1433检查了TCP / IP已启用,并且TCP动态端口为空。我已禁用Windows防火墙。
这是我的代码:
import java.sql.*;
public class DBConnect {
public static void main(String[] args) {
// TODO Auto-generated method stub
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=TestDB1;instance=SQLSERVER;encrypt=true;TrustServerCertificate=true;";
String user = "sa";
String pass = "";
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection myConn = DriverManager.getConnection(dbURL, user, pass);
try {
Statement myStmt = myConn.createStatement();
try {
ResultSet myRs = myStmt.executeQuery("Select * from Login");
while (myRs.next())
{
System.out.println(myRs.getString("Username"));
System.out.println(myRs.getString("Password"));
}
}
catch (Exception e)
{
System.out.println("Error with query");
}
}
catch (Exception e)
{
System.out.println("Error connecting to database");
}
}
catch (Exception e)
{
System.out.println(e);
}
}
}
答案 0 :(得分:10)
您启用了“命名管道”吗?和' TCP / IP'?
打开' Sql Server配置'应用
在左侧窗格中,转到' SQL Server网络配置' - > &[39] [实例名]'
右键点击“命名管道”'和' TCP / IP'并选择'启用'
您使用了正确的端口吗?
双击' TCP / IP'
选择' IP地址'标签
滚动到IPAII。您的端口号在这里。
答案 1 :(得分:0)
还要确保在同一页面上启用了TCP / IP
答案 2 :(得分:0)
此错误通常发生在 SQL Server 不接受 TCP/IP 连接时,请尝试以下步骤,它肯定会起作用。
1)打开运行并添加命令SQLServerManager15.msc 2)点击网络配置,然后点击“MSSQLSERVER的协议” 3)选择协议名称-“TCP\IP”并确保它是启用的,如果不是,请启用它。 4)检查属性并在IP地址选项卡中找到端口。
重启服务器,应该可以了