JDBC 连接失败,错误:与主机的 TCP/IP 连接失败

2022-08-31 10:01:36

我想将Java类文件与SQL Server 2012连接。我已使用 SQL Server 身份验证登录,但在连接时收到错误。

错误:

与主机 127.0.0.1 端口 1433 的 TCP/IP 连接失败。错误:“连接被拒绝:连接。验证连接属性。确保 SQL Server 实例在主机上运行,并在端口上接受 TCP/IP 连接。确保与端口的 TCP 连接未被防火墙阻止。

我的代码:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");  //1. Register your driver
//2. get the connection object
//Connection con = DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=aysha","sa","admin");
Connection con = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1;databaseName=aysha","user=sa","password=admin");
 //"jdbc:sqlserver://127.0.0.1:1433; Instance=SQL2008;" +       "databaseName=MB;user=sa;password=123;";
//Connection con = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=aysha","sa" , "password");
//3. Prepare a statement
Statement stmt = con.createStatement();
//4. Write the query`
String sql = "Select * from employee";
//5. Execute the statement and 
ResultSet rs = stmt.executeQuery(sql);
//6. Process the result set

while (rs.next())
{
    System.out.println(rs.getInt(1));
}

答案 1
  1. 打开 SQL Server Configuration Manager,然后展开 SQL Server 2012 Network Configuration。
  2. 单击“实例名称”的“协议”,然后确保在右侧面板中启用了 TCP/IP,然后双击“TCP/IP”。
  3. 在“协议”选项卡上,请注意“全部侦听”项的值。
  4. 单击“IP 地址”选项卡:如果“全部侦听”的值为“是”,则此 SQL Server 2012 实例的 TCP/IP 端口号是 IPAll 下的“TCP 动态端口”项的值。如果“全部侦听”的值为 no,则此 SQL Server 2012 实例的 TCP/IP 端口号是特定 IP 地址的“TCP 动态端口”项的值。
  5. 确保 TCP 端口为 1433。
  6. 单击“确定”。

答案 2

简单的解决方案

开始>所有程序> Microsoft SQL Server 2012-> 配置工具 -> 单击 SQL Server 配置管理器 ->展开 SQL Server 网络配置->协议 ->启用 TCP/IP 右侧框

双击 TCP/IP,然后转到 IP 地址 点击端口 1433 并将其放在 TCP 端口下。

enter image description here


推荐