在簡單復原模式下還原資料庫備份 (Transact-SQL)

適用於:SQL Server

本主題說明如何還原完整資料庫備份。

重要

負責還原完整資料庫備份的系統管理員,必須是目前唯一正在使用即將還原之資料庫的人員。

先決條件和建議

  • 若要還原加密的資料庫,您必須能夠存取之前用來加密資料庫的憑證或非對稱金鑰。 如果沒有該憑證或非對稱金鑰,就無法還原資料庫。 因此,只要需要備份,就必須保留用來加密資料庫加密金鑰的憑證。 如需詳細資訊,請參閱 SQL Server Certificates and Asymmetric Keys

  • 基於安全性的理由,建議您不要附加或還原來源不明或來源不受信任的資料庫。 此類資料庫可能包含惡意程式碼,因此可能執行非預期的 Transact-SQL 程式碼,或是修改結構描述或實體資料庫結構而造成錯誤。 使用來源不明或來源不受信任的資料庫之前,請先在非實際執行伺服器的資料庫上執行 DBCC CHECKDB ,同時檢查資料庫中的程式碼,例如預存程序或其他使用者定義程式碼。

升級後的資料庫相容性層級

tempdb模型msdb資源資料庫的相容性層級,在升級之後會設定為 SQL Server 的相容性層級。 主要 系統資料庫會保留升級前的相容性層級,除非層級小於 100。 如果升級前 主要 的相容性層級小於 100,升級後會設定為 100。

如果使用者資料庫的相容性層級在升級前為 100 或更高層級,則在升級後仍會保持相同。 如果升級前的相容性層級為 90,則在升級後的資料庫中,相容性層級會設定為 100。這是 SQL Server 2016 (13.x) 或更新版本所支援的最低相容性層級。

注意

新的使用者資料庫會繼承 模型 資料庫的相容性層級。

程序

還原完整資料庫備份

  1. 執行 RESTORE DATABASE 陳述式以還原完整資料庫備份,請指定:

    • 所要還原的資料庫名稱。

    • 將要還原完整資料庫備份的備份裝置。

    • 如果完整資料庫備份還原以後需要套用交易記錄或差異資料庫備份,則請指定 NORECOVERY 子句。

    重要

    若要還原加密的資料庫,您必須能夠存取之前用來加密資料庫的憑證或非對稱金鑰。 如果沒有該憑證或非對稱金鑰,就無法還原資料庫。 因此,只要需要備份,就必須保留用來加密資料庫加密金鑰的憑證。 如需詳細資訊,請參閱 SQL Server Certificates and Asymmetric Keys

  2. (選擇性) 指定:

    • 識別備份裝置上欲還原之備份組的 FILE 子句。

注意

若將舊版資料庫還原成較新版本的 SQL Server 之後,資料庫會自動升級。 通常,資料庫立即變為可用。 不過,如果 SQL Server 2005 (9.x) 資料庫具有全文檢索索引,升級流程就會依 upgrade_option 伺服器屬性的設定來匯入、重設或重建這些索引。 如果升級選項設定為匯入 (upgrade_option = 2) 或重建 (upgrade_option = 0),則全文檢索索引在升級期間將無法使用。 根據進行索引的資料數量而定,匯入可能需要數個小時,而重建可能需要十倍以上的時間。 此外,請注意,當升級選項設定為 [匯入] 時,如果全文檢索目錄無法使用,系統就會重建相關聯的全文檢索索引。 若要變更 upgrade_option 伺服器屬性的設定,請使用 sp_fulltext_service

範例

描述

此範例會從磁帶還原 AdventureWorks2022 完整資料庫備份。

範例

USE master;  
GO  
RESTORE DATABASE AdventureWorks2022  
   FROM TAPE = '\\.\Tape0';  
GO  

另請參閱

完整的資料庫還原 (完整復原模式)
完整資料庫還原 (簡單復原模式)
完整資料庫備份 (SQL Server)
RESTORE (Transact-SQL)
備份記錄與標頭資訊 (SQL Server)
重建系統資料庫