零数据丢失的备份策略

Jac*_*ack 4 sql-server backup sql-server-2012

我正在做一个项目,它有大约 10 万条记录。我们可以承受 1 天的停机时间,但我们需要数据始终以最新状态提供给我们。

我经历了两种选择:

1) 镜像(将在未来版本中弃用)

2) AlwaysOn 可用性组

两者看起来都不适合我的场景,因为镜像很快就会过时,并且可用性组仅在 SQL Server 的企业版中可用。我们只有BI版。

除了这些,还有什么好的选择吗?我们甚至准备花钱购买 3rd 方工具,但目前买不起企业版。

Aar*_*and 6

总是有一个平衡。您可以使用正确的恢复策略接近零数据丢失,而没有任何这些附加技术 - 与 DR 相比,这些技术更适合 HA。我不再称其为备份策略,因为任何此类计划的关键在于您需要测试您是否可以恢复备份,而不仅仅是它们是否成功运行。

由于您可以承受一天的停机时间,因此您可以花时间从存储它们的任何位置检索完整备份和日志备份,并将它们还原到新服务器上。使用完全恢复,并每 5 分钟进行一次日志备份,您应该能够保证永远不会丢失超过 5 分钟的数据(当然,除非您备份到本地磁盘并且磁盘爆炸 - 最佳实践是使您的备份尽可能远离主服务器,尽快)。您可以将该窗口缩短至三分钟、两分钟、一分钟等,但过于频繁地备份日志会导致一些连锁反应 - 最明显的是您的 I/O 子系统、您的 SQL Server 代理历史记录以及当然,恢复到时间点的复杂性。

除了适当的备份/恢复方法(但肯定不会代替)之外,我也不会害怕使用镜像,以使您尽可能接近零数据丢失。仅仅因为它已被弃用并不意味着您必须担心它“很快”不可用。弃用公告通常会发布三个版本...... 6-9 年内有足够的时间来提出替代方案,即使您掌握每个新版本的信息,大多数人都没有,即使这个应用程序是仍在服务中,它可能不是。有很多人仍在运行 2000 和 2005;您认为他们是否担心当前版本中已弃用或停止使用的功能?

此外,当标准版/BI 版客户真正从产品中删除镜像时,微软肯定不得不为他们提供替代方案。我知道从他们宣布弃用的那一刻起,他们就被大声而明确地告知,他们需要为非企业客户制定应急计划。我的猜测是,在完全没有关于该主题的内部知识的情况下,他们将在某个时候向标准版引入一些极其有限的可用性组形式,就像他们在 2008 R2 中使用备份压缩所做的那样,以前仅在企业中可用。