完整資料庫備份會備份整個資料庫。 這包括交易記錄的部分,讓完整資料庫得以在還原完整資料庫備份之後復原。 完整資料庫備份代表備份完成時的資料庫。
小提示
隨著資料庫的大小增加,完整資料庫備份需要更多時間才能完成,而且需要更多儲存空間。 因此,若為大型資料庫,您可能會想透過一系列的 「差異資料庫備份」 (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
使用完整資料庫備份還原資料庫
您可以將資料庫從完整資料庫備份還原到任何位置,在一個步驟中重新建立整個資料庫。 在備份中包含足夠的交易記錄,以讓您將資料庫復原至在備份完成時的時間點。 還原的資料庫會符合資料庫備份完成時的原始狀態,但扣除掉任何未提交的交易。 在完整復原模式之下,應該接著還原所有後續的交易記錄備份。 在資料庫復原之後,未提交的交易會被回滾。
如需詳細資訊,請參閱完整資料庫還原 (簡單復原模式) 或完整資料庫還原 (完整復原模式)。
相關工作
建立完整資料庫備份
排程備份作業