如何:以覆蓋現有檔案的方式還原檔案和檔案群組 (Transact-SQL)
此主題描述如何以覆蓋現有檔案的方式還原檔案與檔案群組。
重要事項 |
---|
進行檔案與檔案群組還原的系統管理員,必須是目前唯一正在使用即將還原之資料庫的人。 |
以覆蓋現有檔案的方式還原檔案與檔案群組
執行 RESTORE DATABASE 陳述式以還原檔案及檔案群組備份,並指定以下項目:
所要還原的資料庫名稱。
將要還原完整資料庫備份的來源備份裝置。
替要還原的每個檔案指定 FILE 子句。
替要還原的每個檔案群組指定 FILEGROUP 子句。
REPLACE 選項,以指明可以用覆蓋相同名稱、相同位置之現有檔案的方式來還原每一個檔案。
警告 請小心使用 REPLACE 選項。如需詳細資訊,請參閱<使用 REPLACE 選項>。
NORECOVERY 選項。如果檔案在備份建立之後沒有做過任何修改,請指定 RECOVERY 子句。
如果檔案在備份建立之後做過修改,則請執行 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