在 SQL Server 上的多个实例中使用不同的端口

在 SQL Server 上的多个实例中使用不同的端口

在我们的开发环境中,我们运行着许多 SQL Server 2008 的命名实例。我最近添加了一个新的实例,但它无法按预期工作。以下是我们的设置:

  • 默认为 10.2.2.48:1433
  • 10.2.2.40:1434 上的 SQL1
  • SQL2 于 10.2.2.41:1435
  • SQL3 于 10.2.2.42:1436

当 SQL3 的 TCP/IP 属性设置为“侦听全部:是”时,它可以正常启动,但无法使用其别名“car-sql3”进行访问。当我将其设置为“侦听全部:否”时,服务无法启动,并在系统事件日志中给出以下错误:

SQL Server (SQL3) 服务因服务特定错误而终止。您未连接,因为网络上存在重复的名称。如果加入域,请转到控制面板中的系统以更改计算机名称,然后重试。如果加入工作组,请选择其他工作组名称。

在设置“IP 地址”下的值时(在配置管理器中),“IP1、IP2、IPnn”指定有什么含义吗?我可以将一个实例的 IP1 设置为一个特定的 IP:端口,将另一个实例的 IP1 设置为另一个 IP:端口吗?还是我需要在这里执行不同的操作。

答案1

端口 1434 由 SQL 浏览器使用(功能上类似于 Oracle 侦听器),用于将客户端连接定向到指定实例的正确端口。如果您尝试使用 SERVERNAME\SQL2 连接到服务器,并且浏览器未处于活动状态,则可能会超时。您可以选择在连接到实例时使用格式 SERVERNAME, 1435 明确指定端口,并且不需要 SQL 浏览器。对于 SQL Server 配置管理器中的每个实例,您只需要在窗口底部的 IPALL 部分中指定端口号。

相关内容