使用 SQL 快照复制从 PRODUCTION 刷新 TEST 数据库。为什么不?

Law*_*ley 6 replication sql-server snapshot

有什么缺点和缺点?

我们想要安排每晚自动刷新 20 个数据库,每个数据库大约 1GB,从 PRODUCTION 服务器到 TEST 服务器。我们正在设置 SQL Server 快照复制以将快照更新从 PRODUCTION 数据库发布到 TEST。有什么我们应该知道的问题吗?

Kin*_*hah 6

你的场景很有趣:

  • 大小约为 1GB 的小型数据库。
  • 数据库数量 = 20
  • 数据每晚刷新一次,因此数据可能会在一天内过时。

最初的想法表明快照复制应该如您所想的那样没问题,但我强烈建议您使用备份/恢复方法 - 安全、可靠且维护开销更少。

请注意,我并不是说快照复制是一个糟糕的选择,但为什么不使用经过验证且可靠的方法 - 备份还原?您可以/应该使用 Powershell 或 T-SQL 或 SSIS自动执行它(备份/恢复)。

快照复制的缺点:

  • 您不能删除/创建标记为复制的表、sp、函数。此外,您不能直接更改表,您必须使用系统存储过程sp_repldropcolumnsp_repladdcolumn.
  • 标准快照将在 BCP 步骤期间锁定表,以确保您获得有效副本。
  • 任何架构更改都需要生成一个新的快照,这在发布者端是安静的资源密集型。
  • 如果您有本地分发服务器,则会出现服务器上的额外开销。
  • 最终监控服务器上运行的多个服务。
  • 依赖于 SQL Server 代理。
  • 快照文件夹的 Windows NT 权限。
  • 网络带宽。