sql-server - SQL Server - 归档的最佳复制模型

标签 sql-server sql-server-2008 backup replication archive

我现在需要开始归档我正在维护的网站的数据库。基本上,每天都会生成大量交易数据,大约 2 周后,这些数据几乎毫无用处——它仍然需要用于报告目的,但可以安全地从生产服务器中移出。

所以,理想情况下,如果我能做到这一点,我会很高兴:

  • 设置拉复制 - 备份服务器每小时从生产服务器获取更改。
  • 每天 - 清理生产服务器数据库 - 删除超过 2 周的条目。

  • 关于#1 - 我很好奇拉复制是否是从性能角度来看最有效的方法?我不想给生产服务器带来压力(或者至少不是很大的压力)......我不太关心保持数据库同步。

    在#2 - 如何确保这些删除不会被复制 - 数据保存在存档服务器上?

    生产服务器运行 SQL Server 2008 Enterprise,备份服务器可以运行任何需要的服务器(目前它运行 SQL Server 2008 Express)

    最佳答案

    对于#1,我会说测试一下看看。 MS 通常有几个白皮书说拉订阅的性能更高,但我不记得他们说它在资源方面的成本。如果您担心,请设置远程分发服务器(远程 = 与发布服务器不在同一台服务器上)

    对于#2,有几种方法可以做到。当您使用 sp_addarticle 设置文章时,有一个参数 @del_cmd 可以取值“none”。这将告诉分发代理在订阅者处进行无操作删除。您还可以使用存储过程进行清除,将存储过程的执行设置为复制中的项目,然后在订阅者处创建一个不执行任何操作的存储过程。每种方法都有其优点和缺点。

    关于sql-server - SQL Server - 归档的最佳复制模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6655189/

    相关文章:

    c# - DataAdapter.Fill 性能异常

    sql - 尝试将数据库发布到没有聚集索引的 Azure 时出错

    sql-server - SQL Server 事务表是否应该始终具有代理主键

    SQL Server 2008 : PIVOT throwing an error 'The conversion of the varchar value ' xxx' overflowed an int column.'

    python - 什么云存储服务允许开发者使用免费 API 上传/下载文件?

    python - 将列表转换为数据框 PYTHON - SQL

    sql - 将 FK/约束添加到表的子部分

    sql - 两列上的单个非聚集索引还是每列上的单独索引?

    Azure MarsAgent 升级失败

    linux - 如何防止在 rsync 中删除目录