SQL复制是答案吗?

时间:2009-12-29 11:05:13

标签: sql-server

对于我们的应用程序(.net中的桌面),我们希望在2个不同的远程位置(不同的国家/地区)拥有2个数据库。当应用程序更改数据时,是否可以使用复制来保持数据库中的数据同步? 。还可以使用哪些其他策略?同步是在瞬间发生还是在预定时间发生?如果我们决定保留一个数据库'readonly'怎么办?

感谢

2 个答案:

答案 0 :(得分:3)

我认为你需要回到你的要求。

  1. 是否需要在两个站点之间共享数据?
  2. 两个网站都可以更新相同的数据吗?
  3. 一个位置的更新在另一个位置可见的最短可接受时间是多少?
  4. 您是否需要故障转移/灾难恢复功能?
  5. 你真的需要两个数据库吗? (例如,它是用于容量,故障转移还是仅仅因为两个站点之间的网络链接很慢?等)
  6. 有关数据访问/可见性的任何其他要求吗?
  7. 实时复制是一种解决方案,隔夜提取 - 转换 - 加载过程可能是另一种解决方案。这实际上取决于您的要求。

答案 1 :(得分:0)

我认为只读问题是关键。如果一个数据库是只读的,那么你可以使用镜像来同步它们,假设你有一个稳定的连接。

网站之间连接的带宽和可靠性是多少?

如果两个位置都发生了更新(在相同数据上),则可能会进行合并复制。它专为移动应用而设计,其中现场用户拥有某些数据子集,并且可能需要在复制时解决冲突。

可以在此处找到SQL Server中各种复制类型的高级说明,包括SQL Server 2008中的新Sync Framework:http://msdn.microsoft.com/en-us/library/ms151198.aspx

-Krip