在SQL Server中使用链接服务器有什么缺点?

时间:2011-06-21 17:02:33

标签: sql-server linked-server

是否存在任何巨大的性能问题或安全问题?

使用SQL Server 2005及更高版本

3 个答案:

答案 0 :(得分:11)

  • 服务器迁移更复杂
  • 设置多跳
  • 的安全性可能很棘手
  • 非SQL Server需要安装本地驱动程序(Sybase,DB2等)
  • 群集,异地DR:注册表项+驱动程序
  • 非SQL Server x64问题。 '努夫说
  • 非SQL Server的播放效果不佳(输入密码的位数是多少?)
  • 表现(在其他答案中)

我已经为Access,DB2,Oracle,Sybase和奇怪的专有ODBC驱动程序设置了链接服务器。我现在更喜欢SSIS或.net代码......

答案 1 :(得分:8)

是 - 在不同物理数据库中连接两个数据集的查询效果不佳。

e.g。如果在当前服务器上的表A和链接服务器上的B之间运行查询。

 Select A.Field1, B.Field2 FROM A INNER JOIN B on A.Id = B.Id
 WHERE B.Id = @InputId

您可能会发现表B的所有记录都已被检索 - 实际上是

 Select * from Table B

进入工作服务器。

你想要做的是在链接服务器上有一个usp,它将Id作为参数并从表B返回一个过滤的记录集

然后重写上面的查询,将表A加入到usp中。

答案 2 :(得分:4)

在服务器上设置一个(或多个)不是问题 - 当您实际查询它们时,性能会受到影响。

我有一个Linked SQLServer 2005设置,它位于同一个物理建筑中(在同一个网络上)而且不是问题 - 你喜欢的速度很快。

我还有另一个链接(Oracle)服务器,它位于世界的另一端,就像走过糖蜜和超时,断开连接(见here!)

抱歉要模糊,但......这取决于!