Partilhar via


Restaurar arquivos e grupos de arquivos em arquivos existentes (SQL Server)

Aplica-se a:SQL Server

Este tópico descreve como restaurar arquivos e grupos de arquivos em arquivos existentes no SQL Server usando o SQL Server Management Studio ou o Transact-SQL.

Neste tópico

Antes de começar

Limitações e Restrições

  • O administrador do sistema que está restaurando os arquivos e grupos de arquivos deve ser a única pessoa atualmente usando o banco de dados a ser restaurado.

  • RESTORE não é permitido numa transação explícita ou implícita.

  • No modelo de recuperação completa ou bulk-logged, antes de restaurar ficheiros, deve-se efetuar uma cópia de segurança do log de transações ativo (conhecido como a cauda do log). Para obter mais informações, consulte Fazer Backup de um Log de Transações (SQL Server).

  • Para restaurar um banco de dados criptografado, você deve ter acesso ao certificado ou à chave assimétrica usada para criptografar o banco de dados. Sem o certificado ou a chave assimétrica, o banco de dados não pode ser restaurado. Como resultado, o certificado usado para criptografar a chave de criptografia do banco de dados deve ser mantido enquanto o backup for necessário. Para obter mais informações, consulte certificados do SQL Server e chaves assimétricas.

Segurança

Permissões

Se o banco de dados que está sendo restaurado não existir, o usuário deve ter permissões CREATE DATABASE para poder executar RESTORE. Se o banco de dados existir, as permissões padrão de RESTORE são concedidas por padrão aos membros das funções de servidor fixas sysadmin e dbcreator, bem como ao proprietário (dbo) do banco de dados. (Para a opção FROM DATABASE_SNAPSHOT, o banco de dados sempre existe.)

As permissões RESTORE são dadas a funções nas quais as informações de associação estão sempre prontamente disponíveis para o servidor. Como a associação à função de banco de dados fixa pode ser verificada somente quando o banco de dados está acessível e sem danos, o que nem sempre é o caso quando RESTORE é executado, os membros da função de banco de dados fixa db_owner não têm permissões RESTORE.

Usando o SQL Server Management Studio

Para restaurar ficheiros e grupos de ficheiros sobre ficheiros existentes

  1. No Explorador de Objetos, conecte-se a uma instância do Mecanismo de Base de Dados do SQL Server, expanda essa instância e depois expanda Bancos de Dados.

  2. Clique com o botão direito do rato na base de dados que deseja, aponte para Tarefas, depois aponte para Restaurare por fim clique em Ficheiros e Grupos de Ficheiros.

  3. Na página Geral, na caixa de listagem banco de dados, insira o banco de dados a ser restaurado. Você pode introduzir um novo banco de dados ou escolher um banco de dados existente na lista suspensa. A lista inclui todos os bancos de dados no servidor, excluindo os bancos de dados do sistema master e tempdb.

  4. Para especificar a origem e o local dos conjuntos de backup a serem restaurados, clique em uma das seguintes opções:

    • Do banco de dados

      Insira um nome de banco de dados na caixa de listagem. Esta lista contém apenas bases de dados que foram respaldadas de acordo com o histórico de backup do msdb.

    • Do dispositivo

      Clique no botão Procurar. Na caixa de diálogo Especificar dispositivos de backup, selecione um dos tipos de dispositivo listados na lista Tipo de mídia de backup. Para selecionar um ou mais dispositivos para a caixa de listagem de mídia de Backup , clique em Adicionar.

      Depois de adicionar os dispositivos desejados à caixa de listagem de Backup de mídia , clique em OK para retornar à página Geral .

  5. Na grelha Selecione os conjuntos de backup a serem restaurados, selecione os backups a serem restaurados. Essa grade exibe os backups disponíveis para o local especificado. Por padrão, é sugerido um plano de recuperação. Para substituir o plano de recuperação sugerido, pode alterar as seleções na grelha. Todos os backups que dependem de um backup desmarcado são desmarcados automaticamente.

    Cabeça da coluna Valores
    Restaurar As caixas de seleção selecionadas indicam os conjuntos de backup a serem restaurados.
    Nome O nome do conjunto de backup.
    Tipo de arquivo Especifica o tipo de dados no backup: Data, Logou Filestream Data. Os dados que estão contidos em tabelas encontram-se em ficheiros de dados . Os dados do log de transações estão nos ficheiros de log . Os dados de objeto binário grande (BLOB) armazenados no sistema de ficheiros estão em arquivos de dados de fluxo de ficheiros .
    Tipo O tipo de backup executado: Full, Differentialou Transaction Log.
    Servidor O nome da instância de Database-Engine que executou a operação de backup.
    Nome lógico do arquivo O nome lógico do arquivo.
    Base de Dados O nome do banco de dados envolvido na operação de backup.
    Data de início A data e a hora em que a operação de backup começou, apresentadas na configuração regional do cliente.
    Data de término A data e hora em que a operação de backup terminou, apresentada na configuração regional do cliente.
    Tamanho O tamanho do conjunto de backup em bytes.
    Nome de Utilizador O nome do usuário que executou a operação de backup.
  6. No painel Selecionar uma página, clique na página Opções .

  7. No painel Opções de restauração, selecione Substituir a base de dados existente (COM SUBSTITUIÇÃO). A operação de restauração substitui todos os bancos de dados existentes e seus arquivos relacionados, mesmo que outro banco de dados ou arquivo já exista com o mesmo nome.

  8. Selecione OK.

Usando Transact-SQL

Para restaurar ficheiros e grupos de ficheiros substituindo os ficheiros existentes

  1. Execute a instrução RESTORE DATABASE para restaurar o backup de arquivos e grupos de arquivos, especificando:

    • O nome do banco de dados a ser restaurado.

    • O dispositivo de backup a partir do qual o backup completo do banco de dados será restaurado.

    • A cláusula FILE para cada arquivo a ser restaurado.

    • A cláusula FILEGROUP para cada grupo de arquivos a ser restaurado.

    • A opção REPLACE especifica que cada ficheiro pode ser restaurado sobre ficheiros existentes com o mesmo nome e localização.

      Atenção

      Use a opção REPLACE com cuidado. Para obter mais informações, consulte .

    • A opção NORECOVERY. Se os arquivos não tiverem sido modificados após a criação do backup, especifique a cláusula RECOVERY.

  2. Se os arquivos tiverem sido modificados após a criação do backup do arquivo, execute a instrução RESTORE LOG para aplicar o backup do log de transações, especificando:

    • O nome do banco de dados ao qual o log de transações será aplicado.

    • O dispositivo de backup a partir do qual o backup do log de transações será restaurado.

    • Use a cláusula NORECOVERY se tiver outro backup de log de transações para aplicar após o atual; caso contrário, utilize a cláusula RECOVERY.

      Os backups do log de transações, se aplicados, devem cobrir o tempo em que os arquivos e grupos de arquivos foram submetidos a backup.

Exemplo (Transact-SQL)

O exemplo a seguir restaura os arquivos e grupos de arquivos para o banco de dados MyNwind e substitui todos os arquivos existentes com o mesmo nome. Dois logs de transações também serão aplicados para restaurar o banco de dados para o momento atual.

USE master;  
GO  
-- Restore the files and filegroups 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  

Ver também

restaurar um backup de banco de dados usando o SSMS
RESTORE (Transact-SQL)
Restaurar arquivos e grupos de arquivos (SQL Server)
Copiar bancos de dados com backup e restauração