创建链接服务器和数据库别名

时间:2012-07-24 09:36:19

标签: sql sql-server linked-server

我有两台服务器Server1和Server2

在两台服务器上,我都有一个名为QAI的数据库

有没有办法可以创建一个链接服务器,其中包含从Server2到Server1的别名,而不是 Server1.QAI.dbo.tbBlah

把它别名为 QAI.dbo.tbBlah

由于服务器2上的QAI DB失败并且需要在修复时回退到Server1实例,因此需要这样做

由于

3 个答案:

答案 0 :(得分:7)

这很有效。在SQL2012上测试

http://alexpinsker.blogspot.se/2007/08/how-to-give-alias-to-sql-linked-server.html

  

将SQL链接服务器添加到特定主机没有问题   运行它。但是如果你需要给它一个别名而不是使用它会怎么样呢   hostname作为链接服务器名称?以下是如何做到这一点:

     

1)步骤1:
  •在SQL Server Management Studio中打开“链接服务器”,然后“新建链接”   服务器&#39 ;.
  •出现的向导内部 - 选择“常规”选项卡   •在"链接服务器"中指定别名。场。
  •选择SQL Native Client作为提供者   •在"产品名称"中添加sql_server;领域(这是神奇的)   •在"数据源" - 指定要用作链接服务器的主机的名称。

     

2)步骤2:
  •在“安全”选项卡中 - 指定适当的安全选项(例如安全上下文)

     

3)步骤3:
  •在“服务器选项”选项卡中 - 输入"数据访问",RPC," Rpc输出"和#34;使用远程协作"是真实的。

     

4)步骤4:
  •享受。

答案 1 :(得分:2)

如果您不想在查询表时指定数据库名称,则可以为其创建同义词。

CREATE SYNONYM [dbo].[DimProduct]
FOR
[AdventureWorksDW].[dbo].[DimProduct]

这将在您的同义词文件夹中创建DimProduct

答案 2 :(得分:1)

我担心这是不可能的,你总是必须明确地引用Server1。 但是,如果您的应用程序是在服务器上而不是在许多客户端上,那么使用点数量有限,您可以在那里修改连接字符串,因此应用程序将暂时引用server1而不是server2。