【问题标题】:Cannot Connect to SQL Named Instance using TCP/IP and 127.0.0.1 Loopback IP Address无法使用 TCP/IP 和 127.0.0.1 环回 IP 地址连接到 SQL 命名实例
【发布时间】:2015-05-13 01:38:26
【问题描述】:

晚上好,

我们的任务是使用下面的 SQLCMD 连接到我们的命名服务器实例:

- 使用 SQLCMD 测试连接到(命名实例)TCP/IP 侦听器 在 TCP 端口 1433 上。使用 127.0.0.1 环回地址模拟 网络。

我几乎尝试了所有我能想到的连接方法,包括以下基本脚本:

  1. sqlcmd -S tcp:MyComputerName,1433
  2. sqlcmd -S tcp:127.0.0.1,1433
  3. sqlcmd.exe -S tcp:MyComputerName,1433 -Q "select getdate()"

这是我不断得到的错误:

  • Sqlcmd:错误:Microsoft SQL Server Native Client 11.0:登录超时已过期。
  • Sqlcmd:错误:Microsoft SQL Server Native Client 11.0:建立与 SQL Server 的连接时出现与网络相关或特定于实例的错误。服务器未找到或无法访问。检查实例名称是否正确以及 SQL Server 是否配置为允许远程连接。

我检查了所有故障排除方法以确保我的防火墙接受端口 1433。我确保可以使用 SQL Server 管理工具接受远程连接。 TCP/IP 协议在网络配置工具的所有三个区域都启用。每个协议中的端口都是 1433。

我完全糊涂了。

我会说有一个脚本我确实通过 tcp 获得了正连接,如下所示:

  • sqlcmd -S tcp:MyComputerName\SQLSERVERNAME

我最终得到 1> 让我知道连接良好。

在研究了很长一段时间后,我转向发布,因为我无法解决解决方案。

想法?

编辑 第一次遇到这个错误:

Sqlcmd:错误:Microsoft SQL Server Native Client 11.0:TCP Provider:无法建立连接,因为目标机器主动拒绝。

【问题讨论】:

  • 当您尝试ping localhost 时会发生什么?还是telnet localhost 1433?
  • 如果我 ping 1433 我得到传输失败。 100% 的损失。 Telnet 不起作用,因为我得到“不被识别为内部或外部命令......”。当我 ping 本地主机时,我得到 0% 的数据包丢失时间
  • 我猜您的 SQL Server 未配置为接受 TCP/IP 连接。检查您的 SQL Server 管理器以找出答案。
  • 嘘。我想到了。在将 TCP/IP 更改为所有端口的默认端口为 1433 之后,我从未在服务器管理器中手动重新启动 SQL Server。一旦我强制重新启动,就会为所有脚本连接方法建立连接。谢谢!
  • 您是否检查过“SQLSERVERAGENT”服务是否正在运行。

标签: sql-server tcp


【解决方案1】:

我也遇到了这个问题,就在 Windows 10 上全新安装 SQL-Server 2008r2 Developer 之后。

正如 Tim3890 指出的那样,问题只是本地 SQL 服务器没有启用 TCP/IP。

见:https://dba.stackexchange.com/questions/62165/i-cant-connect-to-my-servers-sql-database-via-an-ip-address

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-29
    • 1970-01-01
    相关资源
    最近更新 更多