Hei*_*nzi 11 windows backup sql-server
显然,Windows Server Backup对 SQL Server 数据库的备份有一些支持:
能够恢复应用程序。Windows Server Backup 使用内置于 Microsoft® SQL Server® 等应用程序中的 VSS 功能来保护应用程序数据。[来源:TechNet ]
此外,人们报告说 Windows Server Backup 似乎会触发 SQL Server 中的某种备份操作。
但是,我找不到有关如何使用 Windows Server Backup 备份 SQL Server 数据库的(官方)文档。
.mdf吗?在.mdf和.ldf?(我知道如何使用 SQL Server 维护计划、sqlmaint.exeT-SQL BACKUP 和 SQL Server 代理进行备份。我只对 Windows Server Backup(显然?)提供的替代方案感兴趣。)
Windows Server Backup 不打算用作 SQL Server 的备份工具。
...然而,该设计使其特别适合非IT 专业人员的小型组织或个人...
引自适用于 Windows Server 2008 的 Windows Server Backup 分步指南部分:“谁应该使用 Windows Server Backup?”
您引用的部分基本上是说,当 Windows Server Backup 启动时,它将触发 Windows 中的 VSS 功能。SQL Server 会意识到卷影复制正在发生,并且在 SQL Server Writer 服务的帮助下,将确保可以执行数据库文件(*.mdf、*.ndf、*.ldf)的副本。
SQL Server Writer 服务的用途定义如下:
运行时,数据库引擎锁定并具有对数据文件的独占访问权限。当 SQL Writer Service 未运行时,在 Windows 中运行的备份程序无法访问数据文件,必须使用 SQL Server 备份执行备份。
使用 SQL 编写器服务允许 Windows 备份程序在 SQL Server 运行时复制 SQL Server 数据文件。
引自SQL Writer Service部分:“目的”
所以这基本上就是 Windows Server Backup 发生的所有事情。
在 SQL Server 运行时使用 Windows Server Backup 创建的备份应该是一致的,但尚未写入磁盘的事务不在卷影副本中。数据库快照是在 ONLINE 时拍摄的。
但是 MSDN 文章快照备份指出:
只有以下类型的备份可以是快照备份:
- 完整备份
- 部分备份
- 文件备份
- 差异数据库备份。仅当供应商使用 VSS 接口时才支持这些。
此外:
除非本主题前面提到过,否则快照备份在功能上等同于相应的常规备份。您可以在非快照完整备份、差异备份和日志备份的还原序列中使用快照备份。与其他备份一样,快照备份在 msdb 数据库中进行跟踪,其中快照备份由 backupset.is_snapshot = 1 标识。有关 msdb 的详细信息,请参阅 msdb 数据库。
SQL Server 不支持从快照备份进行联机还原。恢复快照备份会自动使数据库脱机。零碎恢复可以包含快照备份,但所有恢复序列都是离线恢复。有关分段还原的更多信息,请参阅执行分段还原。
回答您的问题:
答案:
在我们的环境中,我们遇到了类似的情况,VMware 正在执行快照,而 DBA 正在使用 Commvault 执行 SQL Server 转储。备份历史看起来像这样:
DBNAME TYPE BACKUPSET_NAME IS_SNAPSHOT BACKUP_START_DATE
------- ---- ------------------------- ----------- -----------------------
DB_NAME Full NULL 1 2016-12-10 18:23:59.000
DB_NAME Full CommVault Galaxy Backup 0 2016-12-10 20:07:41.000
DB_NAME Log CommVault Galaxy Backup 0 2016-12-11 06:00:40.000
DB_NAME Full NULL 1 2016-12-11 18:24:00.000
DB_NAME Diff CommVault Galaxy Backup 0 2016-12-11 20:03:38.000
DB_NAME Log CommVault Galaxy Backup 0 2016-12-12 06:02:29.000
DB_NAME Log CommVault Galaxy Backup 0 2016-12-12 07:02:17.000
Run Code Online (Sandbox Code Playgroud)
VMware 快照将在 MSDB 数据库历史记录表中创建一个条目,IS_SNAPSHOT = 1并FULL为每个执行(每天)的 VMware 快照创建一个条目。本机(使用本机的 Commvault)SQL Server 备份是使用 FULL、DIFF 和 TLOG 备份进行的。这些备份未标记为 IS_SNAPSHOT 并且在 msdb 数据库的备份表中作为附加的 FULL(每周一次)、DIFF(每隔一天)和 LOG(每小时)条目存在。
通过此设置,我们可以对快照日期时间执行还原,然后使数据库联机,也可以使用“本机”SQL Server 备份对任何时间点执行单独还原。