完整資料庫備份 (SQL Server)

完整資料庫備份會備份整個資料庫。 這包括交易記錄的部分,讓完整資料庫得以在還原完整資料庫備份之後復原。 完整資料庫備份代表備份完成時的資料庫。

小提示

隨著資料庫的大小增加,完整資料庫備份需要更多時間才能完成,而且需要更多儲存空間。 因此,若為大型資料庫,您可能會想透過一系列的 「差異資料庫備份」 (Differential database backups) 補充完整資料庫備份。 如需詳細資訊,請參閱差異備份 (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)
備份與還原分析服務資料庫