5

我的 2 服务器都使用 SQL Server 2008 R2

我有我的本地 SQL 服务器和一台运行 SQL-Server 实例的亚马逊机器。

我可以使用10.10.10.10, 1433本地 Management Studio 的标准连接从本地计算机连接到该 Amazon SQL。

我现在需要做的是运行一个查询,上面写着..告诉我我在本地有哪些记录现在不在亚马逊服务器上。

就像是:

 SELECT * 
 FROM [LOCAL].dbo.Table1  
 WHERE Field1 NOT IN   
       (SELECT Field1 FROM [AMAZON].Database1.dbo.Table1)

================================= 问题:
我不知道如何在查询上写“AMAZON”位置窗口本身,因为它在不同的服务器上运行。

任何帮助都非常感谢!

4

4 回答 4

3

您必须在本地计算机上将 AMAZON 服务器配置为 LINKED 服务器。如果您将其命名为“AMAZON” - 您的查询将完全按照您所写的方式工作。

于 2012-08-06T08:23:03.090 回答
2

在 SSMS 中,\Server Objects\Linked Servers。右键单击“新建链接服务器”。命名您的服务器,然后选择“SQL 服务器”单选按钮。因为我在两台机器上都是具有 Windows 凭据的授权用户,所以我选择了安全选项卡下的“使用登录的当前安全上下文”单选按钮,甚至不必欺骗本地/远程用户映射。

于 2014-01-17T15:34:38.190 回答
2

为了能够跨多个服务器运行查询,必须在 2 个服务器之间建立链接(链接服务器)。要创建链接服务器,

  1. 导航到服务器对象文件夹下的链接服务器子文件夹
  2. 右键单击链接服务器文件夹
  3. 点击新建链接服务器
  4. 为服务器提供连接字符串
  5. 命名您的链接服务器。

您现在可以使用完整的对象限定 (LinkedServer.Database.tableOwner.Table) 来访问对象。

祝你好运 !

于 2014-10-30T21:57:49.230 回答
0

您应该打开您的注册服务器窗口并为您的服务器创建一个组。然后右键单击组名称并选择新查询(或选择该组中的多个服务器)。如果您执行查询,它将针对选定的服务器运行。

于 2014-02-15T11:07:49.890 回答