备份和快照之间的区别

Jua*_*rez 1 sql-server backup snapshot

我一直在阅读一篇又一篇关于数据库备份和快照之间区别的文章,但它们没有任何意义,所以请帮助我理解

\n
\n

“快照是系统/卷在特定时间点的映像。”

\n

“备份是执行备份时整个系统/卷的副本。”

\n
\n
    \n
  1. 一切都是在某个时间点完成的。这就是物理学的原理。除非你生活在一个不存在时间的黑洞里。这句话对我来说毫无意义。备份是在制作时制作的。是的。呃。这究竟意味着什么。
  2. \n
  3. 我不知道数据库的“图像”应该是什么。这个类比对我来说毫无意义。它们只是意味着“副本”吗?备份也是数据库的副本。再说一遍,它们对我来说都是一样的。
  4. \n
\n
\n

“快照仅保留自上次快照以来数据库的更改\ns”

\n
\n
    \n
  1. 但我还没有拍过快照。这将是第一个。那么快照会是什么样的呢?由于没有上次快照,因此自上次快照以来没有任何更改。会...与备份完全相同吗?
  2. \n
\n
\n

“快照制作速度快且尺寸小”

\n
\n
    \n
  1. 再说一次,这是我的第一张快照。它如何神奇地比备份更快、更小?或者这只是一个谎言?
  2. \n
\n

编辑:来源:(来自备份与快照的所有顶级谷歌结果)

\n

https://phoenixnap.com/kb/snapshot-vs-backup

\n
\n

快照是您的系统/卷在特定时间点的映像。\n

\n

备份是执行备份时整个系统/卷的副本。\n

\n
\n

https://www.sqlshack.com/understanding-database-snapshots-vs-database-backups-in-sql-server/

\n
\n

数据库快照就像数据库在某个时间点的视图。

\n

快照备份的另一个用途是可以为数据库创建\n多个快照,并且可以在不同的时间点\n获取这些快照

\n

可以随时创建备份。快照是数据库的\xe2\x80\x9c时间点\xe2\x80\x9d\n副本。

\n
\n

https://simplebackups.com/blog/backups-vs-snapshots-with-differences-and-examples/#what-is-a-server-or-a-file-backup

\n
\n

快照很小,可以快速轻松地制作,而不会对服务器产生太大影响。

\n
\n

Joh*_* N. 5

您必须对所使用的术语非常具体。

SQL Server 数据库备份

备份 SQL Server 数据库对于保护数据至关重要。本讨论涵盖备份类型和备份限制。本主题还介绍了SQL Server 备份设备和备份介质。
[...]
备份[动词]:将数据或日志记录从SQL Server 数据库或其事务日志复制到备份设备(例如磁盘),以创建数据备份或日志备份。

备份[名词]:SQL Server 数据的副本,可用于在发生故障后恢复数据。SQL Server 数据的备份是在数据库或其一个或多个文件或文件组级别创建的。无法创建表级备份。除了数据备份之外,完整恢复模型还需要创建事务日志的备份。[...]

参考: 备份概述 (SQL Server) (Microsoft Learn | SQL)

SQL Server 数据库快照

数据库快照是 SQL Server 数据库(源数据库)的只读静态视图。自创建快照之时起,数据库快照在事务上与源数据库保持一致。数据库快照始终与其源数据库驻留在同一服务器实例上。虽然数据库快照提供与创建快照时状态相同的数据的只读视图,但快照文件的大小会随着源数据库的更改而增加。
[...]

参考: 数据库快照 (SQL Server) (Microsoft Learn | SQL)

Windows 快照

借助卷影复制服务 (VSS) 和 SQL Writer执行的 Windows 快照实际上是磁盘驱动器 (HDD/SSD/...) 在给定时间点的快照。

SQL Server通过提供编写器(SQL编写器)来支持卷影复制服务(VSS),以便第三方备份应用程序可以使用VSS框架来备份数据库文件。本文介绍了 SQL 编写器组件及其在 SQL Server 数据库的 VSS 快照创建和恢复过程中的作用。它还捕获有关如何配置和使用 SQL 编写器以与 VSS 框架中的备份应用程序配合使用的详细信息。
[...]

参考: SQL Server 备份应用程序 - 卷影复制服务 (VSS) 和 SQL Writer (Microsoft Learn | SQL)

文档中提供了一张漂亮的图片,它指出了 Windows 快照执行数据库快照期间发生的情况:

快照创建工作流程

回答您的问题

备份和快照之间的区别

  1. SQL Server 数据库备份将允许您将数据库恢复到创建(完整)备份时的状态。如果执行了数据库的附加差异备份 (DIFF) 和事务日志备份 (TLOG),那么您将能够及时前进以达到特定时间的数据库状态。
Monday     Tuesday   Tuesday   Tuesday
20:00      20:00     21:00     22:00
 FULL ---> DIFF ---> TLOG ---> TLOG 
Run Code Online (Sandbox Code Playgroud)
  1. SQL Server 数据库快照将创建现有数据库的只读副本,如上面摘录中所述。

  2. Windows Server 快照允许您将整个系统(操作系统和 SQL Server 数据库)恢复到创建快照时的确切时间点。

您问题中有关快照的链接与两种不同的技术相关:数据库快照(请参阅 2.)和Windows Server 快照(请参阅 3.)。

这就是您可能感到困惑的原因。