在 sql 2012 年将 table 从服务器 A 复制到服务器 B 的最佳方法是什么?

what would be the best way to copy table from server A to server B in sql 2012?

我有 table A 在服务器 1 上,table B 在服务器 2 上。 Table 包含大约 150 万行。 将 table A 复制到服务器 B 的最快方法是什么?每晚。

或者仅将在 table A 中更改的记录带到 table B 中的最快方法是什么?

到目前为止,我尝试 MERGEHASHBYTES 函数一起只捕获更改的记录。如果目标和源 tables 在同一台服务器上,它会完美运行。 (大约需要 1 分钟)。

但是如果目标在服务器 B 上但源在服务器 A 上 - 则需要超过 15 分钟。

您认为此类操作的最佳和最快技术是什么?

某种复制?或者 SSIS 可能是最好的选择?

我的 2 美分。既然你用 "On nightly basis" 限定了你的问题,我会说在 SSIS 中做这个。

我会使用 SSIS,它设计用于在服务器之间进行快速的大型数据复制。

此外,如果您可以删除 table B,那么您可以尝试使用 SELECT INTO 而不是 INSERT INTO。

SELECT INTO 快得多,因为它是最少记录的,但请注意 table B 将在插入 运行.

时被锁定

您也可以尝试在插入之前禁用 Table B 上的索引,稍后再重新启用它们。