2010-05-28 120 views
2

我有一个设备不断收集数据并将其存储在本地数据库中。我还希望每隔10秒将这些数据复制到网络上的第二台计算机上,以确保数据的可靠性。我应该使用事务复制来实现吗?如果网络连接暂时不可用,那么复制服务会在连接恢复后自动传输所有积压的数据?收集数据的计算机是否可以是SQL Server Compact或是否必须至少将Workgroup Edition作为发布服务器。第二台PC将运行SQL Server Express并将成为订户。谢谢。SQL Server复制

回答

2
  1. 我倾向于使用镜像或日志传送类似的东西,但如果您的第二台PC正在运行Express,则这些选项不在表格中。
  2. 分销代理将重试,但是如果断开连续持续一段时间,您的订购可能被停用或过期/掉线。
  3. 您的发布者必须至少为Workgroup版本(限制订阅者数量)。

有关哪些版本支持哪些功能的具体信息,请参阅这些链接。

SQL 2008 Editions/Features

SQL 2005 Editions/Features

+1

2.是的,你需要监视您的订阅和初始化他们,如果他们都过期了。我使用合并和快照复制,并每天检查订户状态。 – 2010-05-28 22:05:09

+0

如果有任何重大收益,我们可以从Express Edition升级。为了澄清,第一台PC收集数据并将其存储在本地数据库中,并将其复制到处理数据的主服务器。本地数据库的唯一目的是在服务器上丢失数据的情况下维护备份。数据库大约每10秒更新一次,以便随着更新的进行,复制需要快速和增量。但是,如果例如服务器上的数据库被擦除,则所有缺失的数据都需要同步。什么是最好的选择? – Serge 2010-05-28 22:47:42

+0

我还假定紧凑版本是不可能的,因为它不支持任何这些服务。 – Serge 2010-05-28 22:58:05

1

我认为你至少需要工作组版才能成为你的发布者。除此之外,是的事务复制应该做的伎俩。它可以连续运行,一旦连接恢复,“积压”数据将被复制。