Partilhar via


Recuperar um banco de dados sem restaurar dados (Transact-SQL)

Aplica-se a:SQL Server

Normalmente, todos os dados em um banco de dados do SQL Server são restaurados antes que o banco de dados seja recuperado. No entanto, uma operação de restauração pode recuperar um banco de dados sem realmente restaurar um backup; por exemplo, ao recuperar um arquivo somente leitura que é consistente com o banco de dados. Isso é conhecido como uma restauração somente de recuperação . Quando os dados offline já são consistentes com o banco de dados e precisam apenas ser disponibilizados, uma operação de restauração somente de recuperação conclui a recuperação do banco de dados e coloca os dados online.

Uma restauração somente de recuperação pode ocorrer para um banco de dados inteiro ou para um ou mais arquivos ou grupos de arquivos.

Restauração do banco de dados Recovery-Only

Uma restauração de banco de dados de recuperação pode ser útil nas seguintes situações:

  • Você não recuperou o banco de dados ao restaurar o último backup em uma sequência de restauração e agora deseja recuperar o banco de dados para colocá-lo online.

  • O banco de dados está em modo de espera e você deseja torná-lo atualizável sem aplicar outro backup de log.

A sintaxe RESTORE para uma restauração de banco de dados apenas de recuperação é a seguinte:

RESTORE DATABASE *database_name* WITH RECOVERY

Observação

A cláusula FROM =<backup_device> não é usada para restaurações somente de recuperação porque nenhum backup é necessário.

Exemplo

O exemplo a seguir recupera o banco de dados de exemplo AdventureWorks2025 em uma operação de restauração sem restaurar dados.

-- Restore database using WITH RECOVERY.  
RESTORE DATABASE AdventureWorks2022  
   WITH RECOVERY  

Restauração de arquivos Recovery-Only

Uma restauração de arquivo somente de recuperação pode ser útil na seguinte situação:

Um banco de dados é restaurado aos poucos. Após a conclusão da restauração do grupo de arquivos primário, um ou mais dos arquivos não restaurados são consistentes com o novo estado do banco de dados, talvez porque estivesse em modo somente leitura por algum tempo. Estes ficheiros só têm de ser recuperados; a cópia de dados é desnecessária.

Uma operação de restauração somente de recuperação traz os dados do grupo de arquivos offline para online; nenhuma fase de cópia de dados, refazer ou desfazer ocorre. Para obter informações sobre as fases da restauração, consulte Visão geral da restauração e recuperação (SQL Server).

A sintaxe RESTORE para uma restauração de arquivo exclusivamente para recuperação é:

RESTORE DATABASE *database_name* { FILE **=**_logical_file_name_ | FILEGROUP **=**_logical_filegroup_name_ }[ **,**...*n* ] WITH RECOVERY

Exemplo

O exemplo a seguir ilustra uma restauração de arquivos somente de recuperação dos arquivos em um grupo de arquivos secundário, SalesGroup2, no banco de dados Sales. O grupo de arquivos primário já foi restaurado como a etapa inicial de uma restauração fragmentada e SalesGroup2 é consistente com o grupo de arquivos primário restaurado. Recuperar esse grupo de arquivos e colocá-lo online requer apenas uma única instrução.

RESTORE DATABASE Sales FILEGROUP=SalesGroup2 WITH RECOVERY;  

Exemplos de conclusão de um cenário de restauração fragmentada com uma restauração somente de recuperação

Modelo de recuperação simples

Modelo de recuperação completa

Ver também

Restauração Online (SQL Server)
Restaurações Parciais (SQL Server)
Restaurações de arquivos (modelo de recuperação simples)
Restaurações de Arquivos (Modelo de Recuperação Completa)
RESTAURAR (Transact-SQL)
Visão geral da restauração e recuperação (SQL Server)