显然,Windows Server Backup对SQL Server数据库的备份有一些支持:
能够恢复应用程序。 Windows Server Backup使用内置于Microsoft®SQLServer®等应用程序中的VSSfunction来保护应用程序数据。 [来源: TechNet ]
另外,有人报告说Windows Server Backup似乎在SQL Server中触发某种备份操作 。
但是,我无法find(官方)关于如何使用Windows Server Backup备份SQL Server数据库的文档。
.mdf ? .mdf和.ldf ? (我知道如何使用SQL Server维护计划, sqlmaint.exe ,T-SQL BACKUP和SQL Server Agent进行备份,我只是对Windows Server Backup(显然?)提供的备选scheme感兴趣。
Windows Server Backup不作为SQL Server的备份工具。
…然而,这个devise使它特别适合那些不是 IT专业人士的小型组织或个人。
引自Windows Server 2008的Windows Server 2008分步指南部分:“谁应该使用Windows Server Backup?”
您引用的部分基本上是说,当Windows Server Backup启动时,它将触发Windows中的VSSfunction。 SQL Server将会知道正在进行卷影复制,并且在SQL Server编写器服务的帮助下,将确保可以执行数据库文件(* .mdf,* .ndf,* .ldf)的副本。
SQL Server编写器服务的目的定义如下:
运行时,数据库引擎将locking并拥有对数据文件的独占访问权限。 当SQL编写器服务未运行时,在Windows中运行的备份程序无法访问数据文件,并且必须使用SQL Server备份执行备份。
使用SQL编写器服务允许Windows备份程序在SQL Server运行时复制SQL Server数据文件。
从SQL编写器服务部分报价:“目的”
所以这基本上是所有与Windows服务器备份发生的事情。
在SQL Server运行时使用Windows Server Backup创build的备份应该一致,但尚未写入磁盘的事务不在卷影副本中。 数据库快照是在线时进行的。
但是,MSDN文章“ 快照备份”指出:
只有以下types的备份才能成为快照备份:
- 完全备份
- 部分备份
- 文件备份
- 差异数据库备份。 这些仅在供应商使用VSS接口时才受支持。
另外:
除了本主题前面提到的情况外,快照备份在function上与相应的传统备份等效。 您可以使用非快照完全备份,差异备份和日志备份的还原顺序使用快照备份。 与其他备份一样,在msdb数据库中跟踪快照备份,其中快照备份由backupset.is_snapshot = 1标识。有关msdb的更多信息,请参见msdb数据库。
SQL Server不支持从快照备份进行联机还原。 自动恢复快照备份会使数据库脱机。 零碎还原可以包含快照备份,但所有还原顺序都是脱机还原。 有关零碎还原的更多信息,请参阅执行零碎还原。
回答你的问题:
回答:
在我们的环境中,我们也有类似的情况,VMware正在执行快照,DBA正在使用Commvault执行SQL Server转储。 备份历史logging如下所示:
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
VMware快照将在MSDB数据库历史logging表中创build一个条目, IS_SNAPSHOT = 1并为每个(每天)执行的VMware快照提供FULL 。 使用FULL,DIFF和TLOG备份进行原生(使用本机的Commvault)SQL Server备份。 这些备份不会标记为IS_SNAPSHOT并且作为msdb数据库的备份表中的其他FULL(每周一次),DIFF(每隔一天)和LOG(小时)条目存在。
使用此设置,我们可以执行恢复到snapshotdate时间,然后使数据库联机,或者我们可以使用“原生”SQL Server备份执行单个恢复到任何时间点。
你不能。 或者至less你可能不应该。 就SQL Server数据库而言,本机备份是受支持的方法。
我想您可能会误解TechNet文章的内容。 您所引用的注释并不表示您可以将Windows Server备份用于SQL Server数据库。 实际上只是强调Windows Server备份使用了SQL Server使用的相同的卷影复制服务。 更多信息:TechNet: SQL编写器服务
Sql备份不只是复制数据,它也会截断日志。 你可以在手册页中find数百个选项,这些选项可以帮助你,例如dynamic压缩备份文件。
我记得vss备份被用来复制一个被冻结的虚拟机,或者在SAN上对一个lun进行快照以便备份一个静态映像,但是备份将会像断电一样“崩溃一致”,并且不是真正一致的。
我认为它使用了一种称为“快照备份”的特殊备份types。
从SQL Server 2008文档:
Microsoft Windows Server 2003卷影复制服务(VSS)以及所有使用此框架的备份软件和存储软件也使用SQL Server快照备份。 有关更多信息,请参阅SQL编写器服务。
我对这一切都很不清楚。 特别是如果这会截断事务日志或不。