多个“默认” SQL Server群集中的实例? (AKA多个群集实例,无需连接实例名称)

StackOverflow https://stackoverflow.com/questions/811667

  •  03-07-2019
  •  | 
  •  

我在主动/主动群集上设置多个SQL实例,在我们现有的SQL群集上,群集名称为SQLCLUSTER,但我们以SQLCLUSTERINST1 \ Instance1,SQLCLUSTERINST2 \ Instance2等方式访问实例。由于每个实例无论如何都有自己的IP和网络名称,我可以将SQL安装为“默认”吗?每个网络名称上的实例?我真的想访问我的实例,而不必提供实例名称(即,而不是上面的,只有SQLCLUSTERINST1,SQLCLUSTERINST2等),但我对SQL的理解是,即使在集群中,实例名称也是必需的,即使IP已经唯一地标识了一个实例。

有人知道我能不能这样做?我即将安装第一个实例,我想在我开始安装它们作为命名实例之前得到一个答案,如果我不需要的话。当实例集群名称唯一地标识sql实例时,必须提供实例集群名称和实例名称才能连接到服务器,这似乎是简化的,并且可能是不必要的。我希望每个群集组有一个默认实例(因为它们共享一个IP),但不是每个群集。

有帮助吗?

解决方案 2

我最终为此找到了解决方法。当我在群集上安装命名实例时,我可以使用每个DNS名称上的端口1433访问它们,因此我不必提供实例名称来连接,这就是我所追求的。

为了实现这一目标,我必须修改侦听器配置以强制每个实例在其专用IP上侦听端口1433,而不是仅仅依赖于动态端口和SQL浏览器。

我详细介绍了这些步骤在我的博客上

其他提示

您只能在主动/被动群集中使用默认实例。原因是因为您不能在同一服务器上安装多个默认实例,因此群集需要在群集的每个节点上安装实例以支持故障转移。

好主意rwmnau。我还没有看过你的博客文章,但我怀疑这个限制是围绕注册表项或目录结构。请记住,每个节点只有一个SQL Server注册表配置单元。有一个注册表项列出了框中的实例。这是一个空格分隔的列表。我很确定列表中必须包含不同的值,因此,您不能拥有多个MSSQLSERVER实例。默认实例的内部实例名称是MSSQLSERVER。所以我想,如果没有别的,那就是你的局限。但是,我认为您对所有涉及的实例使用端口1433有一个很棒的想法。干得好,感谢分享。我想我可能会在下一个集群中尝试自己!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top