连接到其他服务器并使用批量插入

时间:2018-10-30 09:06:22

标签: sql-server bulkinsert

我有两台单独的服务器:一台带有数据库(服务器1),另一台带有一些我想插入数据库的文件(服务器2)。两者都使用Windows Server OS。我无法弄清楚如何在服务器2的文件上使用来自服务器1的批量插入。我无法将文件从一台服务器复制到另一台服务器,因为它们在服务器上不断更新。

有一个类似的问题BULK INSERT from a different server,但我需要逐步说明如何从服务器1上的SSMS连接到服务器2。

2 个答案:

答案 0 :(得分:1)

  

从查询访问服务器的权限不是问题

我说的是另一件事,而不是您的查询访问另一台服务器。

一旦您的服务器服务帐户具有网络权限,任何系统管理员都将能够使用SQL服务器访问其他服务器。

因此,要使您的服务器“看到”文件共享,应首先找出SQL Server帐户,然后可以使用服务,配置管理器或执行xp_cmdshell 'whoami'来查看它。

这些是对应的图片:

  1. 使用Windows Services。在“名称”下找到您感兴趣的实例,在“登录为”下找到相应的帐户。 在我的情况下,它是LocalSystem(因为这是我的个人电脑),但在您的情况下,它应该是一个将访问文件共享的域帐户

enter image description here 2.使用CM

enter image description here

  1. 通过执行代码

enter image description here

现在,当您找到服务帐户时,应该像对待其他用户一样,授予它对文件共享的权限。

答案 1 :(得分:0)

您要寻找的被称为Linked Servers。但是让我警告您,由于延迟,跨服务器批量插入可能会非常昂贵!您可以使用具有扩展语法的常规命令,例如INSERT INTO myLinkedServer.myOtherDatabase.dbo.clients blablabla