【发布时间】:2015-06-04 16:23:15
【问题描述】:
我有一台装有 MSSQL 数据库的 PC,每秒填充 800 个变量。我需要该数据库至少每 10 分钟合并/备份到另一台服务器 PC 上的第二个数据库。此外,第一个数据库需要每周清理一次,以节省本地驱动器空间,以便在任何给定时间在第一个数据库上只存储 1 周的数据;同时,第二个数据库保持一切完好无损,永远不会被清除,只会被每 10 分钟发生一次的合并添加。
据我所知,这意味着我不能依赖数据库镜像,因为每周都会擦除第一个镜像。因此,从我收集到的信息来看,这意味着我必须每 10 分钟安排一次合并。
我会欣然承认我对 SQL 几乎一无所知。所以我的两个问题是:
- 如何设置按 10 分钟的频率从一个数据库到另一个数据库的计划合并?
- 如何将数据库设置为计划/脚本化,以便每周清除它?
(注意:两个数据库都在MS SQL Server 2012 Standard上运行。)
【问题讨论】:
-
问题是广泛的,到目前为止你尝试过什么?
-
您能否更具体地说明合并对您意味着什么?这是一个有点负荷的术语。目的地将获得每个表的插入和更新的 upsert 吗?
-
有多种方法可以实现这一点。我能想到的最简单的方法是将两台服务器设置为链接服务器,然后为服务器 A 上的每个表编写一个触发器,将插入/更新到这些表中的任何内容发送到服务器 B。如果您不能使用链接服务器,那么按计划执行 SSIS 包可能是您最好的选择。
-
由于缺乏 SQL 经验,我还没有尝试过任何东西。也就是说,我正在寻找一种每 10 分钟将数据从第一个数据库复制到另一个数据库的方法。由于每个条目都带有时间戳,因此它只会添加到第二个数据库的现有数据库中。
-
这些是复杂的任务,不能直接完成,为了可靠,需要专家来实施、测试和调试。我建议,如果您不知道如何做这些事情,那么您应该雇用/签约会做这些事情的人。
标签: sql sql-server sql-server-2012