INF:在 SQL Server 中還原檔案和檔案群組備份

文章翻譯 文章翻譯
文章編號: 281122 - 檢視此文章適用的產品。
本文曾發行於 CHT281122
全部展開 | 全部摺疊

結論

資料庫中的檔案或檔案群組可以個別地備份和還原。這可讓您只還原損毀的檔案, 而不需還原資料庫的其他部分。檔案群組備份中的檔案可以個別地還原或以群組 的方式還原。本文討論一些與還原檔案和檔案群組相關的重要警告。

其他相關資訊

需要交易記錄檔備份

檔案和檔案群組備份以及還原作業,必須與交易記錄檔備份並用。在還原檔案後, 您必須將建立檔案備份時所建立的交易記錄檔備份加以還原,使資料庫維持一致 的狀態。如果 SQL Server 可以判斷出在建立檔案或檔案群組備份後,檔案或 檔案群組並沒有被修改過,就不必套用交易記錄檔備份。
SQL Server 7.0 :不能設定 TruncateLogOnCheckpoint 選項,且除了備份檔案和檔案群組外,還需建立交易記錄檔的備份。 SQL Server 2000 :如果要建立交易記錄檔備份,您必須使用「完全還原」或「大量登入復原」模式。 如需復原模式的詳細資訊,請參閱《SQL Server 2000 線上叢書》的〈選取復原模式〉主題。
注意 :您必須維護一整套的檔案備份及還原記錄檔備份。如果損毀的檔案沒有備份,則媒體失敗 可能會造成整個資料庫無法還原。

個別檔案的還原無法在中途停止,所以您一定要在還原檔案備份前,將使用中的交易記錄檔 加以備份。如果交易記錄檔損毀,或您要將整個資料庫復原到特定的時間點,則您必須在套用 交易記錄檔備份前,還原整組檔案備份。如果要將交易記錄檔損毀的風險降至最低,請在容錯 儲存體上找出交易記錄檔。

如果整個資料庫遺失的話
您必須擁有資料庫中每個檔案或檔案群組的備份。 您還必須擁有從第一份到最後一份檔案或檔案群組備份的所有交易記錄檔備份系列。 交易記錄檔備份系列的起點,必須包含第一份檔案備份建立時尚未完成的第一份 交易起點。
注意 :如果上述情況中有任何一項不成立,就無法還原資料庫。

檔案和檔案群組備份必須還原到符合的資料庫

檔案和檔案群組備份只能還原到它們所屬的資料庫。您無法用相同的結構 和檔案名稱來建立空白的新資料庫,然後再嘗試還原單一檔案或檔案群組備份; 您必須將其還原到現有的資料庫,或在其他位置執行完整的資料庫還原 (在 SQL Server 2000 中,RESTORE DATABASE 加入了新的子句,以用來進行部分的 資料庫還原作業。請參閱本文稍後〈部分資料庫還原作業〉中的討論。)

注意 :如果在多重檔案資料庫中遺失了一個檔案,請不要卸離然後再重新附加 資料庫。相反地,應該從備份中還原需要的檔案或檔案群組。如果卸離了資料庫,則重新附加會失敗,而您則會被迫從備份 還原整個資料庫。這是因為資料庫檔案會根據「通用識別元」(GUID) 來 對應到資料庫。這項設計是為了保護資料庫的完整性,避免混雜不屬於 資料庫的檔案,而造成嚴重的資料完整性問題。就算您可以用相同的檔名 建立新的資料庫,GUID 也不會符合。

SQL Server 不允許您從包含多個檔案的資料庫附加單一檔案。附加作業會 尋找屬於資料庫所有檔案,而如果它找不到具有對應 GUID 的檔案,附加 作業便會失敗。同樣地,如果您用相同的檔名和檔案群組來建立空白的資料庫 當做原始資料庫、取代一些檔案、然後嘗試讓 SQL 在啟動時還原資料庫,則 還原會失敗 (由錯誤記錄檔所記錄)。例如:
2000-11-28 13:14:52.88 spid9    Opening file C:\MSSQL7\data\f2_Data.NDF. (開啟檔案 C:\MSSQL7\data\f2_Data.NDF。) 
2000-11-28 13:14:53.01 spid9    Cannot associate files with different databases. (無法將檔案與不同的資料庫建立關聯。)
2000-11-28 13:14:53.14 spid9    Device activation error. The physical file name 'C:\MSSQL7\data\f2_Data.NDF' may be incorrect. 
(裝置啟動錯誤。實體檔案名稱 'C:\MSSQL7\data\f2_Data.NDF' 可能錯誤。)
部分資料庫還原作業 (只限 SQL Server 2000)

新的 PARTIAL 子句已被加入 RESTORE T-SQL 陳述式,該陳述式提供將資料庫的部分 還原到其他位置的機制,使損毀或遺失的資料可以複製回原始的資料庫。部分還原作業 可用於資料庫檔案群組。例如,當您有一由主要檔案群組、檔案群組 A 和檔案群組 B 所 組成的資料庫,而且位在檔案群組 B 上的一個資料表被意外刪除。不過,如果您有檔案群組和 交易記錄檔備份可用時,則可以只還原檔案群組 B 和主要檔案群組來重新取得被刪除的 資料表。具有 PARTIAL 子句的 RESTORE 陳述式則可讓您將子集還原到新的資料庫或 甚至還原到不同的伺服器。之後您便可以將資料表的內容展開並重新載入原始資料庫。

主要檔案群組總是會隨著被選取來還原的檔案群組一起還原。沒有還原的檔案群組 會被標示為離線而且無法存取。您無法使用檔案備份來進行部分資料庫還原。

如需如何執行部分資料庫還原的詳細資訊,請參閱《SQL Server 2000 線上叢書》的 〈部分資料庫還原作業〉和〈還原資料庫〉。

請參閱下列關於檔案和檔案群組的主題:

《SQL Server 7.0 線上叢書》主題:

〈Physical Database Files and Filegroups〉
〈Using Files and Filegroups〉
〈Creating Filegroups〉
〈Creating File or Filegroup Backups〉
〈Using File or Filegroup Backups〉
〈Restoring File or Filegroup Backups〉
〈File and Filegroup Backup and Restore〉

《SQL Server 2000 線上叢書》主題:

〈實體資料庫檔案與檔案群組〉
〈使用檔案與檔案群組〉
〈建立檔案群組〉
〈使用檔案備份〉
〈檔案與檔案群組〉
〈備份與還原資料庫〉
〈部分資料庫還原作業〉
〈還原資料庫的選擇部分〉

?考

本文件是根據 Microsoft Knowledge Base 文件編號 Q281122 翻譯的。若要參考原始英文文件內容,請至以下網址:

http://support.microsoft.com/support/kb/articles/Q281/1/22.asp

屬性

文章編號: 281122 - 上次校閱: 2007年10月26日 - 版次: 2.2
這篇文章中的資訊適用於:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
關鍵字:?
kbproductlink kbinfo KB281122
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