Esta manhã realizei um backup diferencial do meu banco de dados, denominado "MW". Agora preciso restaurar o backup (completo+diferencial) em outro banco de dados, denominado "bak_MW".
Recebi um erro ao tentar restaurar o banco de dados com backup completo + backup diferencial.
O erro é:
Falha na restauração do banco de dados 'bak_MW'. (Microsoft.SqlServer.Management.RelationalEngineTasks)
------------------------------ INFORMAÇÕES ADICIONAIS:
System.Data.SqlClient.SqlError: O conjunto de backup contém um backup de um banco de dados diferente do banco de dados 'bak_MW' existente. (Microsoft.SqlServer.SmoExtended)
Acho que o erro está relacionado ao arquivo de origem errado do backup completo. Algum processo fez um backup completo mais recente que o meu.
Como posso obter o nome do arquivo referenciado pelo MSSQL Backup para backup completo?
Existe alguma maneira de encontrar o log do backup completo realizado, com o caminho do arquivo de destino?
Obrigado.
Seu backup diferencial pode ser inútil se o último backup completo tiver sido feito via VSS.
Eu não acho. Se a sua comparação for baseada em um total diferente, a mensagem de erro deverá ser como 'Este backup diferencial não pode ser restaurado porque o banco de dados não foi restaurado para o estado anterior correto.'
Existem dois lugares onde você pode obter dados
No primeiro caso você deve executar uma consulta semelhante àquela fornecida pelo Aardvark
msdb.dbo.backupset
https://learn.microsoft.com/en-us/sql/relational-databases/system-tables/backupset-transact-sql?view=sql-server-ver16
msdb.dbo.backupmediafamily
https://learn.microsoft.com/en-us/sql/relational-databases/system-tables/backupmediafamily-transact-sql?view=sql-server-ver16
Outro ponto de vista é examinar seus arquivos de backup e executar o comando de restauração
https://learn.microsoft.com/en-us/sql/t-sql/statements/restore-statements-filelistonly-transact-sql?view=sql-server-ver16
https://learn.microsoft.com/en-us/sql/t-sql/statements/restore-statements-headeronly-transact-sql?view=sql-server-ver16