首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >始终在可用性组上,始终将用户重定向为只读实例

始终在可用性组上,始终将用户重定向为只读实例
EN

Database Administration用户
提问于 2015-10-13 10:55:41
回答 2查看 2.6K关注 0票数 9

我们有一个始终处于可用状态的组,其中包含一个主要的和一个启用读取的辅助设备。我们有一个实现团队的用户,他使用数据库来检查他们打算放入数据库的数据的正确性。

用户只有从数据库读取的权限,但是当他们通过AG侦听器连接(通过SSMS)时,他们总是连接到活动节点。

我试着让他们直接访问只读实例,但是他们还是固步自封,一两天后,他们又回到了活动节点上。

是否有一种方法可以让SQL Server说这个用户总是有意图地进行读并将他们重定向到那里?

注意:我尝试过在附加的连接参数中设置'ApplicationIntent = ReadOnly‘,但这似乎并不是重定向到次要节点,而且也不是理想的解决方案,因为它们不可避免地会忘记为新的启动程序设置它。

SQL Server 2012 Enterprise,可用性组1主,可读辅助与同步提交。

我不打算让一个用户连接到一个链接的服务器,或通过任何其他服务器。用户通过SSMS (没有其他应用程序)直接连接到数据库,我希望AG侦听器(或其他一些东西)能够在没有用户进行任何操作的情况下,将用户引导到一个备用节点(因为它只具有读取访问权,其中没有访问主节点的意义),因为他们在机器周围移动,并且忘记添加应用程序意图。此外,我发现添加到附加连接参数并不总是指向次要节点。

EN

回答 2

Database Administration用户

发布于 2016-05-10 18:34:34

您想要的是点,然后单击某个解决方案或设置。不幸的是,目前所有这些都没有以“现成”的形式存在。如果微软将其包含在注册服务器的连接设置中,这样就可以保存它,这将是非常好的,但遗憾的是它们没有。

这给您留下了两种选择之一:

  • 自己写点东西
  • 改变用户行为

我偶然看到一个微软下载的SNAC - SQL本机访问客户端,寻找可能满足您的要求的东西(S)。这将允许您编写一小部分代码,为用户提供一个直接访问只读辅助设备的按钮。https://blogs.msdn.microsoft.com/alwaysonpro/2013/08/02/connect-to-sql-server-using-application-intent-read-only/

另一种可能是强迫用户在通过SSMS连接时填写连接参数对话框。要强制这种行为,您需要修改主服务器和辅助服务器上的登录,拒绝连接到主服务器,并允许连接到次要服务器。您可以使用SQL代理作业检查服务器的状态并相应地设置登录。

诚然,我并没有尝试做后者,但从理论上讲,应该是可行的。

票数 2
EN

Database Administration用户

发布于 2018-10-01 20:39:06

现在看来,这是Server 2019中的一个特性。

来自正式文档中的次要于主副本读/写连接重定向(总是在可用性组上)

SQLServer2019预览CTP2.0引入了次要的主副本、读/写连接重定向,用于“始终可用”组。在任何操作系统平台上都可以使用读/写连接重定向。它允许将客户端应用程序连接定向到主副本,而不管连接字符串中指定的目标服务器是什么。例如,连接字符串可以以辅助副本为目标。根据可用性组(AG)副本的配置和连接字符串中的设置,可以自动将连接重定向到主副本。

票数 -3
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/117857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档