当尝试使用 MS Management Studio 和服务器名称[ XX.XXX.XXX.XXX,1433\MyServerName ]和 SQL 身份验证从远程计算机连接到 SQL 数据库时,我收到以下消息:
无法连接到 XX.XXX.XXX.XXX,1433\MyServerName。
其他信息:建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供程序:TCP 提供程序,错误:0 - 等待操作超时。)(Microsoft SQL Server,错误:258)
等待操作超时
我做了以下事情:
我可以使用 Windows 或 Sql 凭据以及 PC 名称或计算机的本地 IPv4 连接到服务器计算机上的数据库。
有趣的是,当>telnet XX.XXX.XXX.XXX 1433运行时,大约需要 10-12 秒才能失败(无法打开与主机的连接,在端口 1433: 连接失败),但我可以看到 2 个数据包到达路由器本身。与使用 SQL 管理器登录相同 - 数据包到达路由器,但任一服务器计算机拒绝(无法解析?)连接,或者甚至无法到达计算机。
感谢您的建议。
使用的版本:
您在本地尝试过 telnet 1433 吗?
您确定您的本地连接使用的是 TCP/IP 吗?默认情况下,本地连接使用 DBNMPNTW(命名管道),它在后端使用共享内存进行本地连接,并且比 TCP/IP 更快。
当 SQL Server 在 TCP/IP 上正常工作时,telnet 将连接并让您眨眼等待协议 — 它不会挂起 10-12 秒并失败。
如果 telnet 在本地工作但在远程无法工作,那么您就知道问题出在网络层(防火墙、NAT、路由等)。如果没有,则问题出在 SQL 配置设置中。更改连接设置后是否重新启动服务?
| 归档时间: |
|
| 查看次数: |
43333 次 |
| 最近记录: |