MSSQL: Reverter o banco de dados do backup de .MDF / .LDF

1

Eu apaguei por engano uma tabela no Microsoft Server Management Studio e a função de restauração não foi configurada corretamente.

Tenho arquivos .mdf e .ldf mais antigos do banco de dados específico com a tabela excluída. Como eu restauraria corretamente a versão mais antiga com esses arquivos? Posso "Desanexar" e anexar novamente a versão mais antiga que existe em outra pasta? Como esta funcionalidade funciona? O que acontecerá com os arquivos .mdf / .ldf atuais e os antigos que eu estou anexando serão movidos para a pasta apropriada?

    
por zillaofthegods 03.08.2014 / 21:00

1 resposta

4

Eu anexaria os arquivos a um novo banco de dados, criaria scripts para a tabela e os recriaria em seu banco de dados ativo.

Primeiro, mova os arquivos * .mdf e * .ldf para os locais de arquivos de banco de dados padrão. Dessa forma, eles herdarão as permissões apropriadas no nível do arquivo.

Agora, crie um novo banco de dados a partir dos arquivos existentes, mas usando um novo nome:

USE master
GO

CREATE DATABASE mydb_restored ON 
( FILENAME = N'C:\Program Files\MSSQL\Data\mydb.mdf' ),
( FILENAME = N'C:\Program Files\MSSQL\Log\mydb_log.ldf' )
FOR ATTACH
GO

Agora, você deve poder navegar no banco de dados antigo, encontrar a tabela em questão. Clique com o botão direito do mouse, selecione "Script Table as" e abra um script "CREATE TO" no editor de consultas.

Edite o script para usar o banco de dados original, em vez do restaurado, e você poderá recriar a tabela.

Você também pode gerar um script que inclui os dados da tabela restaurada

    
por 03.08.2014 / 22:33