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

Aplica-se a: SQL Server

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

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

Restauração de banco de dados somente recuperação

Uma restauração somente recuperação de banco de dados 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 quer recuperar o banco de dados para colocá-lo online.

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

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

RESTORE DATABASE *database_name* WITH RECOVERY

Observação

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

Exemplo

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

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

Restauração de arquivo somente recuperação

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

Um banco de dados é restaurado por etapas. Depois da conclusão da restauração do grupo de arquivos primário, um ou mais dos arquivos não restaurados estão consistentes com o novo estado do banco de dados, talvez porque tenham sido somente leitura por algum tempo. Esses arquivos só precisam ser recuperados; a cópia de dados é desnecessária.

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

A sintaxe RESTORE para a restauração de um arquivo somente 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 recuperação de 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 por etapas e SalesGroup2 está consistente com o grupo de arquivos primário restaurado. Recuperar esse grupo de arquivos e colocá-lo online requer somente uma única instrução.

RESTORE DATABASE Sales FILEGROUP=SalesGroup2 WITH RECOVERY;  

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

Modelo de recuperação simples

Modelo de recuperação completa

Confira também

Restauração online (SQL Server)
Restaurações por etapas (SQL Server)
Restaurações de arquivos (modelo de recuperação simples)
Restaurações de arquivo (modelo de recuperação completa)
RESTORE (Transact-SQL)
Visão geral da restauração e recuperação (SQL Server)