Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL Server-同步两个数据库_Sql_Sql Server_Database_Database Design - Fatal编程技术网

SQL Server-同步两个数据库

SQL Server-同步两个数据库,sql,sql-server,database,database-design,Sql,Sql Server,Database,Database Design,我们有一个仓库数据库,其中包含到目前为止一年的数据。我想创建一个报告数据库,该数据库表示最近3个月的数据,用于报告目的。我希望能够保持两个数据库同步。现在,我每10分钟执行一个包,该包将从仓库中获取最新的行,并将它们添加到报表数据库中。问题是我只得到新行,而没有新的更新 我想知道解决这种情况的各种方法 谢谢您可能应该阅读有关复制的内容,或者询问数据库管理员。查看复制、镜像或日志传送是否可以将列添加到此数据库?您可以向DB中添加一个Last_Activity列,并编写一个触发器来更新该行上的日期/

我们有一个仓库数据库,其中包含到目前为止一年的数据。我想创建一个报告数据库,该数据库表示最近3个月的数据,用于报告目的。我希望能够保持两个数据库同步。现在,我每10分钟执行一个包,该包将从仓库中获取最新的行,并将它们添加到报表数据库中。问题是我只得到新行,而没有新的更新

我想知道解决这种情况的各种方法


谢谢

您可能应该阅读有关复制的内容,或者询问数据库管理员。

查看复制、镜像或日志传送

是否可以将列添加到此数据库?您可以向DB中添加一个Last_Activity列,并编写一个触发器来更新该行上的日期/时间戳,以反映最新的编辑。对于任何新条目,日期/时间将反映添加行时的时间戳


这样,当你抓住最后三个月时,你将抓住最后三个月的活动,而不仅仅是新的东西

如果您使用的是SQL 2000或更低版本,那么复制是最佳选择。因为您每十分钟做一次,所以一定要考虑事务复制


如果您使用的是SQL 2005或更高版本,则有更多选项可供选择。数据库快照、日志传送和镜像,正如上面所建议的那样。这些设备的适用性因硬件而异。您必须进行一些研究,根据您的需要选择最佳的。

我已经准备好了复制、镜像等方面的内容。他们讨论了两个独立的数据库服务器。我需要同步同一台服务器上的两个数据库。使用您所说的技术,这仍然是可能的吗?是的,您可以在同一服务器上的两个数据库之间进行复制。这是一个有趣的解决方案。不过,我得给它一些时间。