【发布时间】:2015-05-13 01:38:26
【问题描述】:
晚上好,
我们的任务是使用下面的 SQLCMD 连接到我们的命名服务器实例:
- 使用 SQLCMD 测试连接到(命名实例)TCP/IP 侦听器 在 TCP 端口 1433 上。使用 127.0.0.1 环回地址模拟 网络。
我几乎尝试了所有我能想到的连接方法,包括以下基本脚本:
- sqlcmd -S tcp:MyComputerName,1433
- sqlcmd -S tcp:127.0.0.1,1433
- 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