这个问题是关于访问可用性组侦听器的正确方式?
假设我有两个AlwaysOn可用性组,它们具有以下AG:AG1
和AG2
我还有两个监听器,分别叫LISTENER1
(在AG1上(和LISTENER2
(在AG2上(。我有两个SQL节点NODE1
和NODE2
,并且都有两个正在运行的SQL实例:INSTANCE1
和INSTANCE2
。
如何通过侦听器正确连接到AG1
的主副本
我知道它不应该是NODE1\INSTANCE,但以下哪项是正确的?
LISTENER1
或
LISTENER1INSTANCE1
我注意到两者都很好,我假设后者连接到LISTENER1的主副本,然后让SQL Browser发挥其魔力,连接到INSTANCE1(幸运的是,在这个特定的设置中,它恰好是正确的(。
我注意到,如果我使用LISTENER1\INSTANCE2,这也可以,但连接到承载AG1主副本的节点的INSTANCE2实例!
兔子洞更进一步:如果我在两个SQL节点上都安装了一个默认实例,我会得到另一种行为:连接到LISTENER1
,将我连接到默认实例。
我的逻辑是正确的(SQL浏览器服务(还是完全错了?
仅供参考:在这种情况下,命名实例使用动态端口,所有侦听器都托管在端口1433 上
最好使用LISTENER1INSTANCE1
因为您有两个实例,而它们不是默认的实例