这个问题是关于访问可用性组监听器的正确方法?
假设我有两个 AlwaysOn 可用性组,它们具有以下 AG:AG1
和 AG2
.
我也有 2 个听众叫 LISTENER1
(在 AG1 上)和 LISTENER2
(在 AG2 上)。
我有 2 个 SQL 节点 NODE1
和 NODE2
并且都运行了 2 个 SQL 实例:INSTANCE1
和 INSTANCE2
.
如何正确连接到 AG1
的主副本通过听众?
我知道它不应该是 NODE1\INSTANCE,但以下哪个是正确的?
LISTENER1
或者
LISTENER1\INSTANCE1
我注意到两者都工作正常,我假设后者连接到 LISTENER1 的主要副本,然后让 SQL 浏览器发挥其魔力并连接到 INSTANCE1(这 - 幸运的是 - 在这个特定设置中是正确的)。
我注意到如果我使用 LISTENER1\INSTANCE2,这也有效,但是连接到托管 AG1 主要副本的节点的 INSTANCE2 实例!
兔子洞更进一步:如果我在两个 SQL 节点上都安装了一个默认实例,我会得到另一种行为:连接到
LISTENER1
, 将我连接到默认实例。我的逻辑是正确的(SQL 浏览器服务)还是我完全错了?
仅供引用:在这种情况下,命名实例使用动态端口,所有监听器都托管在端口 1433 上
最佳答案
最好用LISTENER1\INSTANCE1
因为你有两个实例,它们不是默认实例
关于sql - AlwaysOn 可用性组监听器访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51482778/