什么是自动从2005数据库同步sql server 2008数据库的好方法?

时间:2010-04-19 01:54:42

标签: sql-server sql-server-2005 sql-server-2008

好的,这个场景是......两台服务器,位于互联网完全不同的部分。

sql 2008数据库只需要获取数据更新和架构更改。它不需要向2005数据库发送任何内容。基本上只是作为计划任务自动地尽可能高效地吸取数据和模式。

数据库非常庞大......但每天的变化大概是20/30兆字节的数据/

我无法在2005数据库上运行任何内置复制。

我已经看过Sync Framework,我认为可能会做我想要的,但看起来有点痛苦,需要一些工作才能开始。我想知道是否有工具可以让这更容易?

,或δφ不太清楚我的选择是什么。

3 个答案:

答案 0 :(得分:2)

  

我不能运行任何内置的   2005年数据库上的复制。

这种限制的原因是什么?复制是 解决问题的方法。没有复制基础架构,您将无法检测到数据更改,也无法检测架构更改。检测更改的方法只有两种:通过触发器和跟踪表(即合并复制)或通过数据库日志(即事务复制)。

Sync Framework本身,如果使用它,则需要更改跟踪或更改数据捕获。但这些是2008年的特定技术,它们除了伪装复制之外别无其他(它们使用的是Merge和Transactional Replication使用的相同基础架构)。

即使你想自己动手,你也会很快发现改变的过程是微不足道的,例如。使用Service Broker获得可靠的传递语义。但真正的难题是检测到这些变化,那就是 hard 。通过互联网扩展一个“非常庞大”的数据库以检测变化是行不通的。因此,依靠内置的基础架构来检测变化,即两种形式的复制,只是一个显而易见的解决方案。

答案 1 :(得分:1)

你能自动化RedGate的SQL Compare和/或SQL Data Compare吗? http://www.red-gate.com/products/SQL_Compare/index.htm ...你至少可以尝试14天的试用期,看看是否值得投资。比你自己更便宜,恕我直言。

答案 2 :(得分:1)

也许这些问题可以帮到你:

Microsoft Sync Framework Or Replication

SQL Server Data Archive Solution

Is there a way to replicate some data not all data in db by sql server replication?

您可以创建一个应用程序,在您最喜欢的时间段内根据更改的数据生成脚本,然后在目标服务器中运行此脚本。