2012-07-24 63 views
4

我有两个服务器Server1和Server2创建链接服务器和数据库别名

在两台服务器上,我有一个叫做QAI

数据库是没有办法,我可以创建一个链接的服务器从Server2上的别名的方式到Server1而是的 Server1.QAI.dbo.tbBlah

有它别名为 QAI.dbo.tbBlah

这是必要的,由于QAI DB Server2上失败,需要回落b ACK到Server1的实例,同时它是固定

感谢

+1

你有没有找到一个好的解决方案呢? – 2013-05-23 06:10:32

回答

1

恐怕是不可能的,你总能指到Server1明确。 但是,如果您的应用程序是在服务器上而不是在许多客户端上,所以使用点数量有限,您可以在那里修改连接字符串,以便应用程序暂时引用server1而不是server2。

-1

不是真的。你希望如何在不“说”它的名字的情况下调用链接服务器? ,你可以做另一种选择是:

select * from OPENQUERY (LS_NAME, 'select * from tblBlah') 
2

如果你不想查询表,你可以为它创建同义词时指定的数据库名。

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

这将在您的同义词文件夹

+1

请注意,同义词必须指向低级别的对象;您无法为数据库或模式创建同义词。如果Server1.QAI中有42个不同的表,则必须创建42个同义词,并在添加对象时对其进行维护。 – 2013-08-06 17:03:29

4

这个工程创建DimProduct。经测试在SQL2012

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

有没有问题,SQL链接服务器添加到它运行特定的主机 。但是,如果您需要给它一个别名,而不是使用主机名作为链接服务器名称,那该怎么办?这里是如何做到这一点:

1)第1步:
•在SQL Server Management Studio中打开链接服务器,然后 '新建链接 服务器'。
•出现向导内 - 选择常规选项卡。
•在“链接服务器”字段中指定别名。
•选择SQL Native Client作为提供者。
•在“Product Name”字段中添加sql_server(这就是魔术)。
•在“数据源”中 - 指定要用作链接服务器的主机的名称。

2)第2步:
•在安全选项卡 - 指定正确的安全选项(如安全性上下文)

3)第3步:
•在服务器选项选项卡 - 把 “数据访问”,RPC, “Rpc Out”和“使用远程协作”是正确的。

4)第4步:
•享受。

+0

欢迎来到Stack Overflow!虽然这可能会在理论上回答这个问题,[这将是更可取的](// meta.stackoverflow.com/q/8259)在这里包括答案的基本部分,并提供参考链接。 – 2015-04-28 13:44:33

相关问题