我的理解是所有备份都包含到备份操作完成的时间/点的数据。
管理 SQL 数据库基础结构 - 考试参考书 70-764说:
完整:这包含数据库的全部内容以及在备份操作期间对数据库所做的任何更改。因此,完整备份表示备份操作完成时的数据库。
(强调我的)
然而,对于差异备份,本书暗示了一些不同的东西:
差异:这仅包含上次完整数据库备份与执行差异备份操作的时间点之间的差异。
这样对吗?或者这只是不精确的语言?这里的“执行”是指差异备份开始或完成的时间吗?
对于其他备份类型(日志、部分、文件备份),本书并没有完全说明这一点?
有关完整备份的答案,请参阅此相关问题。引用的权威技术来源是Paul Randal(他是 Microsoft SQL 开发团队的成员)在2009 年发表的一篇文章:
完整数据库备份提供了数据库的完整副本,并提供了可以将数据库还原到的单个时间点。尽管运行备份过程可能需要几个小时,但您仍然只能将备份还原到一个点(实际上是在备份结束时,但我将在本文后面详细讨论该点是什么)。完整备份不允许恢复到备份运行时的任何时间点。
如果您想在这里区分他所说的“有效”是什么意思,您必须了解完整备份所经历的步骤:
完整备份包含将数据库还原到步骤 3 和 4 之间的适当数据。由于第 4 步通常很快完成(除非备份期间活动非常频繁),因此这实际上是备份的结束。
关于差异备份,Randal(在上面链接的同一篇文章中)说:
差异备份执行与完整备份相同的操作,但仅包含自上次完整备份以来已更改或添加的所有数据。
然后,他详细介绍了 SQL 如何准确识别自上次填满以来哪些页面发生了变化,但这只会改变上述步骤 2-3 的操作方式,不会改变其他任何内容。我必须假设这意味着相同的答案,即恢复完整然后差异备份将恢复到非常接近差异备份结束的点,以及我们上面描述的警告。
我将寻找有关日志备份的权威来源。
抱歉,我没有关于文件或分区备份的任何详细信息,我猜它们的操作类似于完整的,只是具有不同的数据页集。
| 归档时间: |
|
| 查看次数: |
389 次 |
| 最近记录: |