SQL Server 2008備份概述

iSQlServer發表於2009-01-16

所有的恢復模式都允許您備份完整或部分的 SQL Server 資料庫或資料庫的單個檔案或檔案組。不能建立表級備份。

 資料備份
資料的備份(“資料備份”)的範圍可以是完整的資料庫、部分資料庫或者一組檔案或檔案組。對於這些範圍,SQL Server 均支援完整和差異備份:

完整備份
“完整備份”包括特定資料庫(或者一組特定的檔案組或檔案)中的所有資料,以及可以恢復這些資料的足夠的日誌。

差異備份
“差異備份”基於資料的最新完整備份。這稱為差異的“基準”或者差異基準。差異基準是讀/寫資料的完整備份。差異備份僅包括自建立差異基準後發生更改的資料。通常,建立基準備份之後很短時間內執行的差異備份比完整備份的基準更小,建立速度也更快。因此,使用差異備份可以加快進行頻繁備份的速度,從而降低資料丟失的風險。通常,一個差異基準會由若干個相繼的差異備份使用。還原時,首先還原完整備份,然後再還原最新的差異備份。
經過一段時間後,隨著資料庫的更新,包含在差異備份中的資料量會增加。這使得建立和還原備份的速度變慢。因此,必須重新建立一個完整備份,為另一個系列的差異備份提供新的差異基準。
注意:
通常,差異備份所涵蓋的資料檔案與單個差異基準所涵蓋的檔案相同。在簡單恢復模式下,一個差異備份只能有一個差異基準。嘗試使用多個基準會引發錯誤,並且備份操作將會失敗。在完整恢復模式下,差異檔案備份可以使用多個基準,但這可能難以管理。有關詳細資訊,請參閱使用多基準差異備份。
 


每個資料備份都包括部分事務日誌,以便備份可以恢復到該備份的結尾。

第一次資料備份之後,在完整恢復模式或大容量日誌恢復模式下,需要定期進行“事務日誌備份”(或“日誌備份”)。每個日誌備份都包括建立備份時處於活動狀態的部分事務日誌,以及先前日誌備份中未備份的所有日誌記錄。

資料庫備份
資料庫備份易於使用,在資料庫大小允許時都建議使用這種方式。SQL Server 支援以下資料庫備份型別。

備份型別  說明 
資料庫備份
 整個資料庫的完整備份。資料庫備份表示備份完成時的整個資料庫。
 
差異資料庫備份
 資料庫中所有檔案的備份。此備份只包含自每個檔案的最新資料庫備份之後發生了修改的資料區。
 

部分備份
在 SQL Server 2005 中引入了部分備份和部分差異備份。這些備份的設計目的在於:為在簡單恢復模式下對包含一些只讀檔案組的資料庫的備份工作提供更多的靈活性。但是,所有恢復模式都支援這些備份。

SQL Server 2008 支援下列型別的檔案備份。

備份型別  說明 
部分備份
 備份主檔案組、所有讀/寫檔案組以及任何選擇指定的只讀檔案或檔案組中的所有完整資料。只讀資料庫的部分備份僅包含主檔案組。
 
部分差異備份
 這種備份僅包含自同一組檔案組的最新部分備份以來發生了修改的資料區。
 

檔案備份
可以分別備份和還原資料庫中的檔案。使用檔案備份使您能夠只還原損壞的檔案,而不用還原資料庫的其餘部分,從而加快了恢復速度。例如,如果資料庫由位於不同磁碟上的若干個檔案組成,在其中一個磁碟發生故障時,只需還原故障磁碟上的檔案。但計劃和還原檔案備份可能會十分複雜;因此,只有在檔案備份能夠為您的還原計劃帶來明顯價值時,才應使用這種備份方式。

SQL Server 支援下列型別的檔案備份。

備份型別  說明 
檔案備份
 一個或多個檔案或檔案組中所有資料的完整備份。

重要提示:
在簡單恢復模式下,檔案備份基本上僅限於只讀輔助檔案組。您可以建立讀/寫檔案組的檔案備份,但必須先將檔案組設定為只讀,並執行差異只讀檔案備份,然後才能還原讀/寫檔案備份。
 
差異檔案備份
 一個或多個檔案的備份,包含自每個檔案的最新完整備份之後發生了更改的資料區。

注意:
在簡單恢復模式下,此備份假定自完整備份之後已經將資料更改為只讀。
 
注意:
可以備份和還原全文目錄。有關詳細資訊,請參閱備份和還原 SQL Server 2008 全文目錄和段落還原和全文索引。
 


 事務日誌備份(僅用於完整恢復模式或大容量日誌恢復模式)
在完整恢復模式或大容量日誌恢復模式下,需要定期進行“事務日誌備份”(或“日誌備份”)。每個日誌備份都包括建立備份時處於活動狀態的部分事務日誌,以及先前日誌備份中未備份的所有日誌記錄。不間斷的日誌備份序列包含資料庫的完整(即連續不斷的)日誌鏈。在完整恢復模式下(或者在大容量日誌恢復模式下的某些時候),連續不斷的日誌鏈讓您可以將資料庫還原到任意時間點。

在建立第一個日誌備份之前,您必須先建立一個完整備份(如資料庫備份)。因此,定期備份事務日誌十分必要,這不僅可以使工作丟失的可能性降到最低,而且還能截斷事務日誌。有關詳細資訊,請參閱使用事務日誌備份。

重要提示:
若要限制需要還原的日誌備份的數量,必須定期備份資料。例如,可以制定這樣一個計劃:每週進行一次完整資料庫備份,每天進行若干次差異資料庫備份。
 


 僅複製備份
通常,進行備份會更改資料庫並影響後續備份的還原方式。但是,有時需要針對特殊目的執行備份,同時不影響資料庫的整體備份和還原過程。為此,SQL Server 2005 中引入了僅複製備份。這種備份獨立於 SQL Server 備份的正常順序。有關詳細資訊,請參閱僅複製備份。

 備份裝置
SQL Server 備份資料在備份裝置(如磁碟檔案或磁帶媒體)上建立。可以將新備份資料追加到裝置中的任意現有備份資料,或者覆蓋任意現有備份資料。有關詳細資訊,請參閱在 SQL Server 中使用備份媒體。

計劃備份
執行備份操作對執行中的事務影響很小,因此可以在正常操作過程中執行備份操作。在備份操作過程中,SQL Server 將資料從資料庫檔案直接複製到備份裝置中。這不會更改資料,也不會延遲在備份過程中執行的事務。因此,您可以在對生產工作負荷的影響很小的情況下執行 SQL Server 備份。有關備份過程中的併發限制的資訊,請參閱本主題後面的“SQL Server 中備份操作的限制”。

可以計劃定期自動執行備份。有關如何為資料庫備份和日誌備份計劃備份作業的資訊,請參閱維護計劃嚮導。

 備份壓縮
SQL Server 2008 Enterprise 及更高版本支援壓縮備份,並且每個 SQL Server 2008 及更高版本都可以還原壓縮後的備份。有關詳細資訊,請參閱備份壓縮 (SQL Server)。

 SQL Server 中備份操作的限制
在 SQL Server 2005 及更高版本中,可以在資料庫聯機並且正在使用時進行備份。但是,存在下列限制。

無法備份離線資料
隱式或顯式引用離線資料的任何備份操作都會失敗。一些典型示例包括:

您請求完整資料庫備份,但是資料庫的一個檔案組離線。由於所有檔案組都隱式包含在完整資料庫備份中,因此,此操作將會失敗。
若要備份此資料庫,可以使用檔案備份並僅指定聯機的檔案組。

請求部分備份,但是有一個讀/寫檔案組處於離線狀態。由於部分備份需要使用所有讀/寫檔案組,因此該操作失敗。

請求特定檔案的檔案備份,但是其中有一個檔案處於離線狀態。該操作失敗。若要備份聯機檔案,可以刪除檔案列表中的離線檔案並重復該操作。

通常,即使一個或多個資料檔案不可用,日誌備份也會成功。但如果某個檔案包含大容量日誌恢復模式下所做的大容量日誌更改,則所有檔案都必須都處於聯機狀態才能成功備份。

備份過程中的併發限制
資料庫仍在使用時,SQL Server 可以使用聯機備份過程來備份資料庫。在備份過程中,可以進行多個操作;例如:在執行備份操作期間允許使用 INSERT、UPDATE 或 DELETE 語句。但是,如果在正在建立或刪除資料庫檔案時嘗試啟動備份操作,則備份操作將等待,直到建立或刪除操作完成或者備份超時。

在資料庫備份或事務日誌備份的過程中無法執行的操作包括:

檔案管理操作,如含有 ADD FILE 或 REMOVE FILE 選項的 ALTER DATABASE 語句。

收縮資料庫或檔案操作。這包括自動收縮操作。

如果在進行備份操作時嘗試建立或刪除資料庫檔案,則建立或刪除操作將失敗。

如果備份操作與檔案管理操作或收縮操作重疊,則產生衝突。無論哪個衝突操作首先開始,第二個操作總會等待第一個操作設定的鎖超時。(超時期限由會話超時設定控制。)如果鎖在超時期限內釋放,則第二個操作繼續執行。如果鎖超時,則第二個操作失敗。

注意:
有關如何建立備份的資訊,請參閱建立 SQL Server 資料庫的完整備份和差異備份和使用事務日誌備份。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-539854/,如需轉載,請註明出處,否則將追究法律責任。

相關文章