差異備份的運作方式

新增: 2005 年 12 月 5 日

顯示藍色資料庫磁碟的圖示 此主題是關於所有類型的資料庫。

差異備份是以之前最近一次的完整備份為基礎。這就稱為差異的*「基底」*。差異備份只包含差異基底之後變更過的資料。

差異備份的大小取決於基底之後變更過的資料量。一般而言,基底愈舊,新的差異備份就會愈大。特定的差異備份會擷取建立該備份當時變更範圍的狀態。如果您建立一系列的差異備份,經常更新的範圍很可能包含每個差異中的不同資料。隨著差異備份大小增加,還原差異備份會大幅增加還原資料庫所需的時間。因此,建議您定期進行新的完整備份,為資料建立新的差異基底。例如,您可能每週進行整個資料庫的完整備份 (亦即,完整資料庫備份),然後在該週定期進行一連串的差異資料庫備份。

下圖說明差異備份的運作方式。圖中顯示 24 個資料範圍,其中 6 個已經變更。差異備份只包含這 6 個資料範圍。差異備份作業必須藉助點陣圖頁面 (此頁面包含每個範圍的一個位元)。對於基底之後已更新的每個範圍,點陣圖中的位元將設為 1。

差異點陣圖識別變更的範圍

ms345448.note(zh-tw,SQL.90).gif附註:
僅限複製備份不會更新差異點陣圖。因此,僅限複製備份無法當成差異基底或差異備份。僅限複製備份不影響後續的差異備份。

在基底之後不久建立的差異備份,其大小通常比差異基底小得多,因此可以節省儲存空間和備份時間。不過,資料庫隨著時間不斷變更後,資料庫和特定差異基底之間的差異也會跟著增加。差異備份及其基底之間相隔的時間愈長,差異備份的規模可能愈大。這表示差異備份的大小到最後會與差異基底的大小十分接近。大型的差異備份將喪失備份速度較快與規模較小的優勢。

還原時,您必須在還原差異備份之前先還原其基底。接著,只還原最新的差異備份,以便將資料庫向前復原到建立該差異備份的時間點。通常,您會在還原最新的完整備份之後,接著還原以該完整備份為基礎的最新差異備份。

當您建立和還原差異備份時,SQL Server 2005 會將資料庫視為一組檔案。這會影響差異備份的內容,以及與資料庫和檔案備份搭配使用的方式。SQL Server Database Engine 是為了能輕鬆、正確處理常見狀況而設計。

如需詳細資訊,請參閱<差異備份的基底>。

請參閱

概念

差異資料庫備份
差異部分備份
差異檔案備份

說明及資訊

取得 SQL Server 2005 協助