Restaurar arquivos .BAK com T-SQL

Para restaurar um banco de dados SQL via T-SQL, você pode utilizar os seguintes procedimentos:

O primeiro comando, irá ajudar a identificar a integridade do arquivo, e também a versão do banco de dados contido no arquivo.

RESTORE HEADERONLY 
FROM DISK = N'C:\TEMP\Nome_Do_Arquivo.BAK';

A coluna “DatabaseVersion” informa o “Internal database version”, tornando possível identificar em qual versão do SQLServer este arquivo pode ou não ser restaurado.

O segundo comando, nos permitirá identificar os LogicalNames originais, que serão necessários posteriormente, lembre-se de anotá-los.

RESTORE FILELISTONLY
FROM DISK = N'C:\TEMP\Nome_Do_Arquivo.BAK';

A primeira coluna das linhas nos permite visualizar o LogicalName original de cada file contida no arquivo .BAK. Com eles poderemos utilizar a cláusula MOVE no comando a seguir.

RESTORE DATABASE [NomeDatabase] 
FROM DISK = N'C:\TEMP\Nome_Do_Arquivo.BAK' 
WITH 
MOVE 'DataLogicalName' TO 'C:\SQL2019\DATA\LogicalName.ldf',
MOVE 'LogLogicalName' TO 'C:\SQL2019\DATA\LogicalName_log.ldf',
STATS=10,
RECOVERY;

As cláusulas MOVE, movem o conteúdo dos LogicalNames para os arquivos da nova database, a cláusula STATS, mostra em percentual o estado do restore, enquanto a cláusula RECOVERY permite que a database esteja disponível para uso ao final do restore revertendo todas as transações não confirmadas, caso houverem.

Restaurar arquivos .BAK com T-SQL

Um pensamento em “Restaurar arquivos .BAK com T-SQL

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para o topo