如何:以覆蓋現有檔案的方式還原檔案和檔案群組 (Transact-SQL)

此主題描述如何以覆蓋現有檔案的方式還原檔案與檔案群組。

ms187090.note(zh-tw,SQL.90).gif重要事項:
進行檔案與檔案群組還原的系統管理員,必須是目前唯一正在使用即將還原之資料庫的人。

以覆蓋現有檔案的方式還原檔案與檔案群組

  1. 執行 RESTORE DATABASE 陳述式以還原檔案及檔案群組備份,並指定以下項目:

    • 所要還原的資料庫名稱。
    • 將要還原完整資料庫備份的來源備份裝置。
    • 替要還原的每個檔案指定 FILE 子句。
    • 替要還原的每個檔案群組指定 FILEGROUP 子句。
    • REPLACE 選項,以指明可以用覆蓋相同名稱、相同位置之現有檔案的方式來還原每一個檔案。
      ms187090.Caution(zh-tw,SQL.90).gif注意:
      請小心使用 REPLACE 選項。如需詳細資訊,請參閱<使用 REPLACE 選項>。
    • NORECOVERY 選項。如果檔案在備份建立之後沒有做過任何修改,請指定 RECOVERY 子句。
  2. 如果檔案在備份建立之後做過修改,則請執行 RESTORE LOG 陳述式以套用交易記錄備份,並指定下列項目:

    • 交易記錄檔要套用的資料庫名稱。
    • 用於還原交易記錄備份的備份裝置。
    • 倘若在目前的交易記錄備份之後還有另一個交易記錄備份要套用,請指定 NORECOVERY 子句,否則請指定 RECOVERY 子句。
      您所套用的交易記錄備份必須涵蓋檔案和檔案群組備份的時間。

範例

下列範例還原 MyNwind 資料庫的檔案和檔案群組,並取代任何相同名稱的現有檔案。同時還套用了兩份交易記錄,以便將資料庫還原到目前的時間。

USE master
GO
-- Restore the files and filesgroups for MyNwind.
RESTORE DATABASE MyNwind
   FILE = 'MyNwind_data_1',
   FILEGROUP = 'new_customers',
   FILE = 'MyNwind_data_2',
   FILEGROUP = 'first_qtr_sales'
   FROM MyNwind_1
   WITH NORECOVERY,
   REPLACE
GO
-- Apply the first transaction log backup.
RESTORE LOG MyNwind
   FROM MyNwind_log1
   WITH NORECOVERY
GO
-- Apply the last transaction log backup.
RESTORE LOG MyNwind
   FROM MyNwind_log2
   WITH RECOVERY
GO

請參閱

概念

使用備份與還原來複製資料庫

其他資源

RESTORE (Transact-SQL)
SQL Server Management Studio 教學課程

說明及資訊

取得 SQL Server 2005 協助