데이터베이스 마스터 키 복원Restore a Database Master Key

이 항목에서는 SQL Server 2017SQL Server 2017 을 사용하여 Transact-SQLTransact-SQL에서 데이터베이스 마스터 키를 복원하는 방법에 대해 설명합니다.This topic describes how to restore the database master key in SQL Server 2017SQL Server 2017 by using Transact-SQLTransact-SQL.

항목 내용In This Topic

시작하기 전 주의 사항 Before You Begin

제한 사항 Limitations and Restrictions

  • 마스터 키가 복원되면 SQL ServerSQL Server 는 현재 사용 중인 마스터 키로 암호화된 모든 키의 암호를 해독한 다음 복원된 마스터 키를 사용하여 이러한 키를 암호화합니다.When the master key is restored, SQL ServerSQL Server decrypts all the keys that are encrypted with the currently active master key, and then encrypts these keys with the restored master key. 이 리소스를 많이 사용하는 작업은 사용량이 낮은 기간 동안에만 수행하도록 예약해야 합니다.This resource-intensive operation should be scheduled during a period of low demand. 현재 데이터베이스 마스터 키가 열려 있지 않거나 열 수 없는 경우 또는 이 키를 사용하여 암호화된 일부 키의 암호를 해독할 수 없는 경우 복원 작업이 실패합니다.If the current database master key is not open or cannot be opened, or if any of the keys that are encrypted by it cannot be decrypted, the restore operation fails.

  • 암호 해독 중 하나가 실패하면 복원이 실패합니다.If any one of the decryptions fails, the restore will fail. 오류를 무시하기 위해 FORCE 옵션을 사용할 수 있지만 이 옵션을 사용하면 암호를 해독할 수 없는 데이터를 손실할 수 있습니다.You can use the FORCE option to ignore errors, but this option will cause the loss of any data that cannot be decrypted.

  • 서비스 마스터 키로 마스터 키가 암호화된 경우 복원된 마스터 키는 서비스 마스터 키로도 암호화할 수 있습니다.If the master key was encrypted by the service master key, the restored master key will also be encrypted by the service master key.

  • 현재 데이터베이스에 마스터 키가 없는 경우 RESTORE MASTER KEY가 마스터 키를 만듭니다.If there is no master key in the current database, RESTORE MASTER KEY creates a master key. 새 마스터 키는 서비스 마스터 키로 자동으로 암호화되지 않습니다.The new master key will not be automatically encrypted with the service master key.

보안 Security

사용 권한 Permissions

데이터베이스에 대한 CONTROL 권한이 필요합니다.Requires CONTROL permission on the database.

Transact-SQL과 함께 SQL Server Management Studio 사용 Using SQL Server Management Studio with Transact-SQL

데이터베이스 마스터 키를 복원하려면To restore the database master key

  1. 물리적 백업 미디어 또는 로컬 파일 시스템의 디렉터리에서 백업한 데이터베이스 마스터 키의 복사본을 검색합니다.Retrieve a copy of the backed-up database master key, either from a physical backup medium or a directory on the local file system.

  2. 개체 탐색기에서 데이터베이스 엔진Database Engine인스턴스에 연결합니다.In Object Explorer, connect to an instance of 데이터베이스 엔진Database Engine.

  3. 표준 도구 모음에서 새 쿼리를 클릭합니다.On the Standard bar, click New Query.

  4. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute.

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

    키의 경로와 암호(있는 경우)는 위에 나타난 것과 다릅니다.The file path to the key and the key's password (if it exists) will be different than what is indicated above. 둘 다 서버 및 키 설정에 대해 고유한지 확인하세요.Please make sure that both are specific to your server and key set-up.

    자세한 내용은 RESTORE MASTER KEY(Transact-SQL)를 참조하세요.For more information, see RESTORE MASTER KEY (Transact-SQL)