還原資料庫主要金鑰

適用於:SQL Server

本主題說明如何使用 Transact-SQL 還原 SQL Server 中的資料庫主要金鑰。

開始之前

限制事項

  • 當主要金鑰還原時,SQL Server 會解密所有利用目前作用中主要金鑰加密的金鑰,然後利用還原的主要金鑰加密這些金鑰。 這項需要大量資源的作業應該安排在低需求時進行。 如果目前資料庫主要金鑰未開啟或無法開啟,或者,如果利用該金鑰加密的任何金鑰無法解密,還原作業便會失敗。

  • 如果任何一項解密失敗,還原便會失敗。 您可以利用 FORCE 選項來省略錯誤,但這個選項會使所有無法解密的資料遺失。

  • 如果先前是由服務主要金鑰加密主要金鑰,則還原的主要金鑰也會由服務主要金鑰來加密。

  • 如果目前資料庫中沒有主要金鑰,RESTORE MASTER KEY 就會建立主要金鑰。 不會自動利用服務主要金鑰來加密新的主要金鑰。

安全性

權限

需要資料庫的 CONTROL 權限。

搭配 Transact-SQL 使用 SQL Server Management Studio

若要還原資料庫主要金鑰

  1. 從實體備份媒體或本機檔案系統上的目錄,擷取已備份的資料庫主要金鑰副本。

  2. 在物件總管中,連線到資料庫引擎的執行個體。

  3. 在標準列上,按一下 [新增查詢]

  4. 複製下列範例並將其貼到查詢視窗中,然後按一下 [執行]

    -- Restores the database master key of the AdventureWorks2022 database.  
    USE AdventureWorks2022;  
    GO  
    RESTORE MASTER KEY   
        FROM FILE = 'c:\backups\keys\AdventureWorks2022_master_key'   
        DECRYPTION BY PASSWORD = '3dH85Hhk003#GHkf02597gheij04'   
        ENCRYPTION BY PASSWORD = '259087M#MyjkFkjhywiyedfgGDFD';  
    GO  
    

    注意

    金鑰的檔案路徑和金鑰的密碼 (如果有) 不同於上方指示。 請確定兩者都是您伺服器和金鑰設定專用的。

另請參閱