執行檔案還原 (簡單復原模式)
這個主題僅與至少包含一個唯讀次要檔案群組的簡單模式資料庫有關。
檔案還原的目的是還原一或多個損毀的檔案,而不還原整個資料庫。在簡單復原模式下,僅支援唯讀檔案的檔案備份。透過還原資料庫或部分備份,永遠一併還原主要檔案群組和讀取/寫入次要檔案群組。
[!附註]
如需詳細資訊,請參閱<執行完整資料庫還原 (簡單復原模式)>或<執行分次還原>。
SQL Server 的所有版本全都支援在資料庫離線時還原檔案 (「離線分頁還原」)。SQL Server 2005 Standard、SQL Server 2005 Express Edition 和 SQL Server 2005 Workgroup 及更新版本僅支援離線還原,而且將檔案還原至主要檔案群組時,資料庫一定要離線。如果資料庫已經離線,SQL Server 2005 Enterprise Edition 及更新版本就會使用離線還原。
在 SQL Server 2005 Enterprise Edition 和更新的版本中,如果資料庫在檔案還原期間處於線上,則資料庫會保持在線上。當資料庫仍在線上時還原和復原檔案,就稱為「線上檔案還原」。
這些檔案還原實例如下:
離線檔案還原
在離線檔案還原中,還原損毀的檔案或檔案群組時,資料庫處於離線狀態。在還原順序結束後,資料庫會恢復上線。
線上檔案還原
在 SQL Server 2005 Enterprise Edition 及更新的版本中,檔案還原會在資料庫處於線上狀態時自動在線上執行。不過,包含正在還原之檔案的任何檔案群組都會離線。離線檔案群組中的所有檔案都復原後,檔案群組就會自動回到線上。如需有關線上還原的詳細資訊,請參閱<執行線上還原>。
[!附註]
當資料庫在線上時,其主要檔案群組及所有的讀取/寫入檔案群組全都會在線上。只有線上檔案群組可以查詢或更新。嘗試存取處於離線狀態的檔案群組 (包括含有正在還原或復原之檔案的檔案群組) 會導致錯誤發生。
還原檔案或檔案群組
檔案還原是單一還原順序,動作依序為複製、向前復原及復原適當資料,如下所示:
從檔案備份和差異檔案備份還原損毀的一或多個檔案
從最新的檔案備份來還原每一個損毀的檔案。
針對每一個已還原的檔案,還原其最新的差異檔案備份,並復原資料庫。
還原檔案與檔案群組
SqlRestore (SMO)
進階主題
檔案還原的 Transact-SQL 還原順序 (簡單復原模式)
下列 Transact-SQL 程式碼顯示,檔案還原實例的還原順序中重要的 RESTORE 選項。會省略與這個檔案還原無關的語法和詳細資料。
此還原順序包含兩項作業。首先還原次要檔案,即檔案 A,且以 with NORECOVERY 來還原。第二項作業還原其他兩個檔案 B 和 C,並使用 with RECOVERY 從差異備份裝置還原。
檔案還原的順序如下:
RESTORE DATABASE <database> FILE = <name_of_file_A>
FROM <file_backup_of_file_A>
WITH NORECOVERY
RESTORE DATABASE <database> FILE=<name_of_file_B>, <name_of_file_C>
FROM <file_backup_of_files_B_and_C>
WITH RECOVERY
[!附註]
如果您正在使用 SQL Server 2005 Enterprise Edition,並且想要讓資料庫離線以進行檔案還原,請在啟動還原順序之前,執行下列 ALTER DATABASE 陳述式,使資料庫離線:ALTER DATABASE <database_name> SET OFFLINE。