在完整復原模式下備份

更新: 2006 年 7 月 17 日

完整復原模式會使用記錄備份以防止在大部分的故障狀況中損失資料,因此需要備份和還原交易記錄 (「記錄備份」)。使用記錄備份的優點是可讓您將資料庫還原至記錄備份內包含的任何時間點 (「時間點復原」)。假使您可以在損毀發生之後備份使用中的記錄,您就可以將資料庫還原至失敗點,而不會遺失任何資料。使用記錄備份的缺點是需要儲存空間,而且會增加還原的時間和複雜性。

ms190217.note(zh-tw,SQL.90).gif附註:
如果使用記錄備份的優點無法平衡管理備份的成本,建議您使用<簡單復原模式>。

對於定期使用完整復原模式的資料庫,您可以暫時使用大量記錄復原模式,讓特定的大量作業最佳化。大量記錄復原模式會帶來許多限制,因此不適合做為每日的例行作業。如需詳細資訊,請參閱<大量記錄復原模式下的備份>。

範例備份策略

下圖顯示在完整復原模式下最簡單的備份策略。在此圖中,已進行資料庫備份 (Db_1) 和兩個例行記錄備份 (Log_1 和 Log_2)。在 Log_2 記錄備份之後,資料庫的資料突然遺失了。在還原這三個備份之前,資料庫管理員必須備份使用中的記錄 (記錄結尾)。然後,資料庫管理員會還原 Db_1、Log_1 和 Log_2,而不復原資料庫。然後資料庫管理員會還原和復原結尾記錄備份 (結尾)。這樣會將資料庫復原至失敗點,進而復原所有的資料。

正在還原完整復原模式資料庫

將工作損失風險降至最低

在第一次完整資料庫備份完成及定期記錄備份開始之後,潛在的工作損失風險將縮限於資料庫損毀到最近一次定期記錄備份之間的時間。因此,建議您經常建立記錄備份,使工作損失風險維持在商務需求所要求的範圍內。

在失敗發生後,您可以嘗試備份*「記錄的結尾」* (尚未備份的記錄)。如果記錄結尾備份成功,您可以將資料庫復原至失敗點,以避免任何工作損失。

您可以使用一系列的記錄備份,將資料庫向前復原至其中一個記錄備份所包含的任何時間點。為了將風險降到最低,建議您排程例行的記錄備份。請注意,您可以利用相同資料的一系列差異備份來補充每個完整備份,以縮短還原時間。

下圖顯示利用差異資料庫備份以及一系列例行記錄備份來補充完整資料庫備份的備份策略。交易記錄備份的存在,使潛在的工作損失風險縮限於最近一次記錄備份之後的時間。在第一次資料庫備份之後,連續建立了三次差異備份。第三個差異備份已經大到下一次備份時必須進行完整資料庫備份。這會建立新的差異基底。

完整及差異資料庫備份與記錄備份

上圖中第一次資料庫備份之前,資料庫承受了潛在工作損失的風險 (從時間 t0 到時間 t1)。此後,例行的記錄備份使工作損失風險降到可能遺失最後一次記錄備份 (上圖的建立時間為 t14) 之後所做的變更。如果發生失敗,資料庫管理員應該立即嘗試備份使用中的記錄 (記錄結尾)。如果這個*「結尾記錄備份」*成功,資料庫可還原至失敗點。

大量作業與完整復原模式

完整復原模式可透過記錄所有作業、併入大量作業 (例如 SELECT INTO、CREATE INDEX) 和大量載入資料,讓您將資料庫復原到失敗點或更早的時間點 (稱為*「時間點還原」*)。

當大量載入資料和增加效能的需求勝過可能遺失資料的風險時,完整復原模式的許多使用者都會暫時切換到大量記錄復原模式。大量記錄復原模式以盡量從簡的方式記錄大量作業,然而會完整地記錄其他交易。如需有關大量記錄復原模式的詳細資訊,請參閱<大量記錄復原模式下的備份>。

ms190217.note(zh-tw,SQL.90).gif附註:
在 SQL Server 2000 及更新版本中,使用 sp_dboptionselect into/bulkcopy 資料庫選項,會將復原模式重設為 BULK_LOGGED。在 SQL Server 2000 中,必須要有這個選項才能使用 SELECT INTO 來建立永久資料表。不過,在 SQL Server 2005 中,永遠不需要這個選項,而且務必要避免使用。您應該改用 ALTER DATABASE。未來的 SQL Server 版本將移除這個 sp_dboption 預存程序。

使用備份來還原資料庫

還原資料庫時需要一連串的還原作業 (「還原順序」)。還原順序開始至少會還原一個完整備份,然後選擇性地執行對應的差異備份。

每個完整和差異備份都包含恰好足夠讓您用來復原資料庫的記錄。不過,您通常會想要依序還原後續的記錄備份,最後再還原結尾記錄備份 (如果有的話)。因此,在開始還原資料庫之前,您必須先建立結尾記錄備份。結尾記錄備份可讓您將資料庫還原直到失敗點。最後一個記錄備份已還原時,您必須復原資料庫。

ms190217.note(zh-tw,SQL.90).gif附註:
在完整復原模式或大量記錄復原模式下,SQL Server 2005 Enterprise Edition 會在資料庫仍在線上時支援還原檔案及/或頁面。這就稱為「線上還原」。不論資料庫是離線或在線上,還原檔案的 RESTORE 語法和還原頁面的相同。

如需詳細資訊,請參閱<SQL Server 中的還原和復原概觀>。

請參閱

概念

備份裝置
使用標示的交易 (完整復原模式)
SQL Server 中的還原和復原概觀
從完整或大量記錄復原模式進行切換

其他資源

瞭解和管理交易記錄
使用差異備份

說明及資訊

取得 SQL Server 2005 協助

變更歷程記錄

版本 歷程記錄

2006 年 7 月 17 日

變更的內容:

2005 年 12 月 5 日

變更的內容:
  • 將先前的<完整復原概觀>主題一併加入。
  • 新增附圖。