Compartilhar via


Restaurar uma chave mestra de banco de dados

Este tópico descreve como restaurar a chave mestra do banco de dados no SQL Server 2014 usando o Transact-SQL.

Nesse Tópico

Antes de começar

Limitações e restrições

  • Quando a chave mestra é restaurada, o SQL Server descriptografa todas as chaves criptografadas com a chave mestra atualmente ativa e criptografa essas chaves com a chave mestra restaurada. Essa operação de uso intensivo de recursos deve ser agendada durante um período de baixa demanda. Se a chave mestra do banco de dados atual não estiver aberta ou não puder ser aberta ou se qualquer uma das chaves criptografadas por ela não puder ser descriptografada, a operação de restauração falhará.

  • Se qualquer uma das descriptografias falhar, a restauração falhará. Você pode usar a opção FORCE para ignorar erros, mas essa opção causará a perda de dados que não podem ser descriptografados.

  • Se a chave mestra foi criptografada pela chave mestra de serviço, a chave mestra restaurada também será criptografada pela chave mestra de serviço.

  • Se não houver chave mestra no banco de dados atual, RESTORE MASTER KEY criará uma chave mestra. A nova chave mestra não será criptografada automaticamente com a chave mestra de serviço.

Segurança

Permissões

Requer permissão control no banco de dados.

Usando o SQL Server Management Studio com Transact-SQL

Para restaurar a chave mestra do banco de dados

  1. Recupere uma cópia da chave mestra do banco de dados com backup, seja de um meio de backup físico ou de um diretório no sistema de arquivos local.

  2. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.

  3. Na barra Padrão, clique em Nova Consulta.

  4. Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.

    -- 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  
    

    Observação

    O caminho do arquivo para a chave e a senha da chave (se ela existir) será diferente do indicado acima. Verifique se ambos são específicos para o servidor e a configuração de chave.

Para obter mais informações, consulte RESTORE MASTER KEY (Transact-SQL)