【问题标题】:SQL Server instance name with IP address带有 IP 地址的 SQL Server 实例名称
【发布时间】:2009-10-23 19:19:05
【问题描述】:

我遇到了一个非常奇怪的情况,我希望这里有人知道原因。

我为默认端口 1433 上的所有端口启用了 TCP/IP。

所有测试都与 SQL Server Management Studio 和我的程序一致。

这行得通:

  • 计算机名\实例名
  • 127.0.0.1
  • 127.0.0.1,1433
  • 192.168.1.100
  • 192.168.1.100,1433

这不起作用:

  • 127.0.0.1\InstanceName

注意:我知道这与防火墙无关,因为我可以在端口 1433 上 telnet 到 127.0.0.1。

注意2:连接字符串无关紧要,因为测试与Management Studio一致,但无论如何我都会给它:server={0};Integrated Security=True;Database=MyDatabase

在阅读 MSDN 时,您似乎应该能够通过 IP 地址连接到实例名称。

这是怎么回事?

【问题讨论】:

    标签: c# .net sql-server connection-string named-instance


    【解决方案1】:

    命名 SQL 实例默认侦听随机端口。您需要启动SQL Browser 服务,它在 1434 上侦听 UDP 并响应实例发现请求,指示客户端真正的侦听端口。您还需要允许防火墙根据进程名称戳洞,以便 SQL 可以绑定到它感觉的任何端口。

    否则,您必须在非命名端口上显式强制命名实例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-06
      • 1970-01-01
      • 1970-01-01
      • 2014-09-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多