SQL Server 2012链接服务器应用程序意图

cha*_*had 6 sql sql-server sql-server-2012

我需要针对SQL Server 2012可用性组创建链接服务器,并且我希望将所有请求路由到只读副本.但是,我无法确定如何指定ReadOnly Application Intent以确保将请求路由到正确的副本.

有没有人以这种方式成功配置链接服务器?

小智 5

我已尝试过两种方法,下面(来自Microsoft技术网站)可以使用

EXEC sp_addlinkedserver 
@server = N'linked_svr', 
@srvproduct=N'SqlServer',
@provider=N'SQLNCLI11', 
@datasrc=N'AG_Listener_Name', 
@provstr=N'ApplicationIntent=ReadOnly', 
@catalog=N'MY_DB_NAME';
Run Code Online (Sandbox Code Playgroud)


ste*_*ary 0

我没有 AlwaysOn 可用性组来测试这一点,但您可以在通过 sp_addlinkedserver 设置链接服务器时指定连接字符串。

SQL Server 2012 接受以下内容并成功创建一个可以工作的链接服务器,无论它是否遵循您必须测试的 ApplicationIntent 属性,但它应该按照设置为使用本机客户端作为提供程序进行操作:

sp_addlinkedserver 
@srvproduct = 'DB', --Don't use 'SQL Server' otherwise it won't let you set any properties
@server = 'LINKED-SERVER-NAME',
@provider = 'SQLNCLI',
@provstr = 'Data Source=SERVER\INSTANCE;Initial Catalog = Database;ApplicationIntent=ReadOnly' 
Run Code Online (Sandbox Code Playgroud)