【问题标题】:SQL Server Synchronize data between two databaseSQL Server 在两个数据库之间同步数据
【发布时间】:2015-04-30 13:22:05
【问题描述】:

我正在使用 SQL Server 2008 R2。我想在两个数据库之间同步数据。主数据库是所有插入、更新和删除操作发生的地方,它保存在网络上的不同服务器上。另一个是反映同步时主库状态的数据库。

我希望自动完成此活动。当任何记录在主数据库中插入、删除或更新时,它应该同时反映在其他数据库中。

我应该使用自定义脚本还是有可以处理该过程的工具?

【问题讨论】:

标签: sql-server database sql-server-2008-r2


【解决方案1】:

最好的办法是使用Transactional Replication

作为最佳实践,性能将取决于

  • 您要复制多少数据?始终只复制您需要的数据(而不是整个数据库)。
  • 发布者 - 分发者和订阅者之间的网络带宽。
  • 请记住,初始快照会锁定发布者端的表,因此最好在最短的活动时间内创建快照。

如果数据库太大,可以initialize it from backup

另外,请参考Transactional Replication Concerns

【讨论】:

  • 数据库太大,即十万条记录,并且主表中的数据被非常频繁地插入,在 4-5 个表中以秒为单位。我希望它自动完成。
  • 这就是为什么我建议在维护窗口期间或活动最少时设置并执行初始快照。此外,只复制您需要的数据。
  • 是自动流程吗?
  • 是的,它是 .. 一旦您进行设置并将初始快照应用于订阅者。您应该先阅读文章并在测试环境中实现。在对 Publisher 进行架构更改时必须小心,因为它需要一个新的快照。还要看看 T-Rep 的局限性。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-28
  • 2012-03-04
相关资源
最近更新 更多