交易記錄檔備份和還原程序,在 SQL Server 上的非記錄式和最少式記錄作業的效果的描述

文章翻譯 文章翻譯
文章編號: 272093 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

結論

某些作業是任一個非記錄、 最少式記錄或,移除交易記錄檔的非現用部分,可能需要的交易記錄檔順序的影響。本文提供這些作業的相關的資訊,他們會影響後續交易記錄檔備份和還原程序。

SQL Server 2000 使用三種新的復原模型與 SQL Server 7.0 做比較。這篇文章中也有說明 SQL Server 2000 的差異。

其他相關資訊

SQL Server 7.0

取決於非記錄作業時嘗試這種非記錄作業之後執行交易記錄檔備份的 SQL Server 7.0 可能行為三個不同的方式:
  • 行為一的備份失敗並顯示這些錯誤訊息:
    伺服器: 訊息 4213、 層級 16,狀態 1、 第 1 行

    不能允許 BACKUP LOG,因為檔案 'dbname' 已被必須非記錄式更新進行,而且無法向前復原。執行完整資料庫或差異式資料庫,備份。
    -以及-
    伺服器: 訊息 3013、 層級 16,狀態 1、 行 1

    備份或還原操作異常終止。
    什麼會使這個行為?

    會導致一表現方式的非記錄作業包括:

    • 非記錄式 bcp
    • 選取至
    • WRITETEXT
    • UPDATETEXT
    • 資料轉換服務 」 (DTS) 與 使用快速載入] 和 [資料表鎖定 已啟用。
    所有上述作業牽涉到修改資料,或插入新的資料。因為新的資料完全不交易記錄檔中記錄,記錄檔不可用來還原資料,稍後在發生災難性失敗的情況下。交易記錄檔備份可以繼續之前,必須執行完整或差異式資料庫備份。

  • 備份失敗,並顯示這些錯誤訊息: 二表現方式的備份會傳回這個警告] 訊息,然後執行交易記錄檔備份:
    沒有目前的資料庫備份。無法用這個記錄檔備份來回復執行重做先前的資料庫備份。
    什麼會使這個行為?

    會導致二表現方式的作業包括:

    • 備份記錄檔與 TRUNCATE_ONLY
    • sp_dboptiontrunc。登入 chkpt 」,請將設定為後面接著的 TRUE

      sp_dboptiontrunc。登入 chkpt,設定為 FALSE。
    這些作業而不需備份交易記錄檔截斷交易記錄檔的非現用部分。之後截斷記錄檔,後續嘗試製作交易記錄檔的備份會傳回警告訊息。SQL Server 不會繼續建立交易記錄檔備份。不過,此交易記錄檔備份無效,而且不會還原。當您嘗試還原這類的記錄檔備份時,會傳回下列錯誤訊息:

    伺服器: 訊息 4305、 層級 16,狀態 1、 第 1 行

    此備份組無法還原,因為資料庫已不向前復原夠遠。還原這個記錄檔前,必須先還原所有先前的記錄檔。
    -以及-
    伺服器: 訊息 3013、 層級 16,狀態 1、 行 1

    備份或還原操作異常終止。
    這種行為是經過設計規劃的。應該注意作業及後果的性質的任何使用者,只要執行上述作業之一。如果任何先前的作業執行,應該執行完整或差異式資料庫備份。
  • 備份失敗,並顯示這些錯誤訊息: 三表現方式的交易記錄檔備份沒有任何警告訊息。
什麼會使這個行為?

通往 [表現方式三的作業:
  • 截斷資料表
截斷資料表會回收該資料表所使用的頁面。交易記錄檔會記錄分頁解除配置資訊。因此,作業可以是向前捲動向前復原。後續的交易記錄檔備份允許,且可用於稍後還原。

SQL Server 2000 和 SQL Server 2005 中

在完整復原] 模型會記錄每一個變更至資料庫。所以沒有任何先前的錯誤狀況,就會發生。

簡單復原] 模型中任何嘗試一律製作交易記錄檔的備份將會失敗並顯示下列錯誤訊息:
伺服器: 訊息 4208、 層級 16,狀態 1、 第 1 行

BACKUP LOG 陳述式不允許 SIMPLE 復原模式時。使用備份資料庫或變更使用 ALTER 資料庫的復原模式。
-以及-
伺服器: 訊息 3013、 層級 16,狀態 1、 行 1

BACKUP LOG 正在異常終止。
在大量記錄] 模型最少的記錄可能會執行下列作業來儲存交易記錄檔空間:
  • 大量載入作業,包括 bcp 和 BULK INSERT。
  • CREATE INDEX,包括索引檢視表。
  • 選取至
  • WRITETEXT
  • UPDATETEXT
  • 使用快速載入] 和 [資料表鎖定 啟用 DTS。
SQL Server 7.0 與不同 SQL Server 2000 和 SQL Server 2005 實際上允許交易記錄檔備份之後這類最少式記錄的作業。這類交易備份記錄檔不只備份記錄檔,它也會備份配置給先前作業的範圍。因此,這類的記錄檔備份可用於稍後還原。但是,大量記錄復原模式只允許資料庫記錄備份包含大量變更時,還原至最後的交易記錄檔備份。不支援時間點復原。此外,備份包含大量記錄作業的記錄檔需要存取資料庫中的所有資料檔案。如果資料檔案沒有可存取,無法備份最後的交易記錄檔,並且該記錄檔中的所有已認可的作業將會遺失。

在 SQL Server 2000 和 SQL Server 2005 中,截斷記錄檔檢查點] 選項會存在只為了回溯相容性。Microsoft 建議您改用簡單復原模式。如果您變更從完整或大量記錄至簡單復原模式,然後再切換回,後續交易記錄檔備份就會傳回相同的警告訊息行為兩 「 SQL Server 7.0 」 一節中所述,而且執行警告訊息之後,記錄檔備份。

使用這類交易記錄檔備份的後續的還原作業失敗,下列的錯誤訊息:
伺服器: 訊息 4305、 層級 16,狀態 1、 第 1 行

此備份組中的記錄檔開始於 LSN LSNnumber 即太晚將套用至資料庫。可以還原較早的記錄檔備份,其中包含 LSN LSNnumber
-以及-
伺服器: 訊息 3013、 層級 16,狀態 1、 行 1

RESTORE LOG 正在異常終止。
「 SQL Server 7.0 」 一節所述的三的行為也適用於 SQL Server 2000。

屬性

文章編號: 272093 - 上次校閱: 2005年12月7日 - 版次: 4.3
這篇文章中的資訊適用於:
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
關鍵字:?
kbmt kbinfo KB272093 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:272093
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com