資料庫快照集的一般用法

資料庫快照集是資料庫 (稱為「來源資料庫」) 的唯讀、靜態檢視。每個資料庫快照集會與快照集建立時的來源資料庫維持交易的一致性。建立資料庫快照集時,來源資料庫一般都會有開啟交易。要回復開啟交易,讓來源資料庫維持交易的一致性後,才能開始使用快照集。

用戶端可查詢資料庫快照集,方便根據快照集建立時的資料來撰寫報表。此外,如果之後來源資料庫發生損毀,您可以將來源資料庫還原到快照集建立時的狀態。

重要事項重要事項

只有在 SQL Server Enterprise 中才能使用資料庫快照集。

建立資料庫快照集的原因包括:

  • 維護報表產生的歷程記錄資料。

    因為資料庫快照集提供資料庫的靜態檢視,所以快照集可對特定時間點的資料提供存取。例如,您可以在指定期間 (如財務季度) 結束時,建立資料庫快照集以供之後的報表使用。接著,您可以在快照集執行期末報表。如果磁碟空間容許的話,還可以永遠維持期末快照集,針對這些期間查詢結果;例如,調查組織效能。

  • 使用為了可用性用途而維護的鏡像資料庫,以卸載報表。

    將資料庫快照集與資料庫鏡像一起使用,可讓您存取鏡像伺服器上的資料以供報表使用。此外,在鏡像資料庫上執行查詢,可以釋放主體伺服器上的資源。如需詳細資訊,請參閱<資料庫鏡像和資料庫快照集>。

  • 保護資料以防發生管理疏失。

  • 在進行主要更新工作之前 (例如大量更新或結構描述變更),在資料庫上建立資料庫快照集可保護資料。如果發生錯誤,您可以將資料庫還原為快照集,利用快照集進行復原。就此用途而言,還原可能遠比從備份還原快;不過,還原之後就不能再向前復原。

    如需詳細資訊,請參閱<還原至資料庫快照集>。

    [!附註]

    資料庫快照集相依於來源資料庫。因此,使用資料庫快照集還原資料庫,並非備份和還原策略的替代方案。基本上還是請您執行所有排程備份。如果您必須將來源資料庫還原到您建立資料庫快照集當時的時間點,請實作可讓您執行此作業的備份原則。

  • 保護資料以防使用者有所疏失。

    定期建立資料庫快照集,可減輕因重大的使用者錯誤 (例如卸除的資料表) 所造成的影響。如需更高階的保護,您可以建立一系列資料庫快照集,所涵蓋的時間長度足以辨識出大多數使用者造成的錯誤,並對之作出回應。例如,視您的磁碟資源而定,您可能會在 24 小時的間隔內,維護 6 到 12 個回復快照集。接著,每建立一個新的快照集,就會刪除最舊的快照集。

    • 若要復原使用者造成的錯誤,您可以將資料庫還原為錯誤發生之前的快照集。就此用途而言,還原可能遠比從備份還原快;不過,還原之後就不能再向前復原。

      如需還原快照集的詳細資訊,請參閱<還原至資料庫快照集>。

    • 或者,可以利用快照集中的資訊,手動重新建構卸除的資料表,或其他遺失的資料。例如,您可以將快照集中的資料大量複製到資料庫中,並手動將資料合併到資料庫內。

    [!附註]

    使用資料庫快照集的理由,會決定資料庫上同時要有幾個快照集、建立新快照集的頻率,以及保留快照集的時間長度。

  • 管理測試資料庫

    在測試環境中,在每一回測試開始時,對資料庫重複執行測試通訊協定以包含相同資料,是很有幫助的。在執行第一回之前,應用程式開發人員或測試人員可以在測試資料庫上建立資料庫快照集。在每一回測試執行之後,可還原資料庫快照集,使資料庫快速回到它先前的狀態。

請參閱

其他資源