完整数据库备份 (SQL Server)

完整数据库备份备份整个数据库。 这包括事务日志的一部分,以便在还原完整数据库备份后恢复完整数据库。 完整数据库备份表示备份完成后的数据库。

小窍门

随着数据库的大小增加,完整数据库备份需要更多时间才能完成,并且需要更多的存储空间。 因此,对于大型数据库,可能需要使用一系列 差异数据库备份来补充完整数据库备份。 有关详细信息,请参阅差异备份(SQL Server)。

重要

在数据库备份上,TRUSTWORTHY 设置为 OFF。 有关如何将 TRUSTWORTHY 设置为 ON 的信息,请参阅 ALTER DATABASE SET 选项 (Transact-SQL)

本主题内容:

简单恢复模式下的数据库备份

在简单的恢复模式下,在每次备份后,如果发生灾难,数据库将面临潜在的工作损失。 每次更新时,工作损失风险都会增加,直到下一次备份,当工作损失暴露恢复为零时,工作损失暴露开始新的周期。 备份之间的工作丢失风险会随着时间推移而增加。 下图显示了仅使用完整数据库备份的备份策略的工作丢失风险。

显示数据库备份之间的工作损失风险

示例(Transact-SQL)

以下示例演示如何使用 WITH FORMAT 来覆盖任何现有备份,并创建一个新的媒体集以进行完整的数据库备份。

-- Back up the AdventureWorks2012 database to new media set.  
BACKUP DATABASE AdventureWorks2012  
    TO DISK = 'Z:\SQLServerBackups\AdventureWorksSimpleRM.bak'   
    WITH FORMAT;  
GO  

完整恢复模式下的数据库备份

对于使用完整和大容量日志恢复的数据库,数据库备份是必需的,但不够。 还需要事务日志备份。 下图显示了完全恢复模式下可能的最低复杂备份策略。

完整数据库备份和日志备份系列

有关如何创建日志备份的信息,请参阅事务日志备份(SQL Server)。

示例(Transact-SQL)

以下示例演示如何通过使用 WITH FORMAT 选项覆盖任何现有备份并创建新的媒介集来实现完整数据库备份。 然后,该示例备份事务日志。 在现实生活中,必须执行一系列常规日志备份。 对于此示例, AdventureWorks2012 示例数据库设置为使用完整恢复模式。

USE master;  
ALTER DATABASE AdventureWorks2012 SET RECOVERY FULL;  
GO  
-- Back up the AdventureWorks2012 database to new media set (backup set 1).  
BACKUP DATABASE AdventureWorks2012  
  TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012FullRM.bak'   
  WITH FORMAT;  
GO  
--Create a routine log backup (backup set 2).  
BACKUP LOG AdventureWorks2012 TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012FullRM.bak';  
GO  

使用完整的数据库备份来还原数据库

可以通过将数据库从完整数据库备份还原到任何位置,在一步中重新创建整个数据库。 备份中包含足够的事务日志,使你能够将数据库恢复到备份完成的时间。 还原的数据库符合数据库备份完成时原始数据库的状态,只是不包括任何未提交的事务。 在完整恢复模式下,应还原所有后续事务日志备份。 当数据库恢复时,将回滚未提交的事务。

有关详细信息,请参阅完整数据库还原(简单恢复模式)完整数据库还原(完整恢复模式)。

相关任务

创建完整数据库备份

计划备份作业

使用维护计划向导

另请参阅

SQL Server 数据库的备份和还原
备份概述 (SQL Server)
Analysis Services 数据库的备份和还原