SQL Server - 同步两个数据库
Posted
技术标签:
【中文标题】SQL Server - 同步两个数据库【英文标题】:SQL Server - Syncing two database 【发布时间】:2009-01-15 17:19:50 【问题描述】:我们有一个仓库数据库,其中包含到目前为止一年的数据。我想创建代表过去 3 个月数据的报告数据库以用于报告目的。我希望能够使两个数据库保持同步。现在,我每 10 分钟执行一次包,该包将从仓库中获取最新的行并将它们添加到报告数据库中。问题是我只得到新行而不是新更新。
我想知道解决这种情况的各种方法。
谢谢
【问题讨论】:
【参考方案1】:研究复制、镜像或日志传送
【讨论】:
我已经准备好复制、镜像等。他们谈到了 2 个独立的数据库服务器。我需要在同一台服务器上同步两个数据库。使用您所说的技术,这仍然可能吗? 是的,您可以在同一台服务器上的两个数据库之间进行复制。【参考方案2】:如果您使用的是 SQL 2000 或更低版本,复制是您的最佳选择。由于您每十分钟执行一次,因此您绝对应该查看事务复制。
如果您使用的是 SQL 2005 或更高版本,则可以使用更多选项。 SQLMenace 上面建议的数据库快照、日志传送和镜像。这些的适用性取决于您的硬件。您必须进行一些研究才能选择最适合您需求的产品。
【讨论】:
【参考方案3】:您可能应该阅读有关复制的信息,或询问您的数据库管理员。
【讨论】:
【参考方案4】:是否可以向该数据库添加列?您可以将 Last_Activity 列添加到数据库并编写一个触发器来更新该行上的日期/时间戳以反映最新的编辑。对于任何新条目,日期/时间将反映添加行时的时间戳。
这样,当您抓取过去三个月时,您将抓取过去三个月的活动,而不仅仅是新的东西。
【讨论】:
这是一个有趣的解决方案。不过,我将不得不给这个。以上是关于SQL Server - 同步两个数据库的主要内容,如果未能解决你的问题,请参考以下文章