[ERRO SQL] Error Sql 3154: The backup set holds a backup of a database other than the existing database

Publicado: 19/03/2012 em ASP.NET, Backup, Bases de Dados, C#, Erros, Hardware, Internet, Microsoft, Programação, Segurança da Informação, Sistemas Operacionais, Softwares, SQL, Tecnologia, Truques & Dicas, Tutoriais / Info, Visual Studio
Tags:, ,

erro_sqlserver

Eis que tentamos restaurar um bakup (.bak) do SQL Server 2005 PTBR em um 2008 EN ehh..

Error 3154: The backup set holds a backup of a database other than the existing database.

Porém a solução é até que simples e não requer tanta complicação.

O Sql está tentando restaurar o database em outra database existente que está ativa..

Fix/WorkAround/Solução:

0) Vá em opções e selecione (check / habilite ) a opçao overwrite existing database.

1) caso contrário use o comando WITH REPLACE enquanto usar o comando RESTORE.  (Veja um exemplo:)

2) Delete o antigo database que está em conflito e restaure novamento usando o comando de RESTORE.

3) Segue um exemplo 1:

RESTORE DATABASE AdventureWorks
FROM DISK = 'C:\BackupAdventureworks.bak'
WITH REPLACE

4) Segeu exemplo 2:

Use this script to restore:

ALTER DATABASE AdventureWorks
SET SINGLE_USER WITH
ROLLBACK IMMEDIATE
RESTORE DATABASE AdventureWorks
FROM DISK = 'C\:BackupAdventureworks.bak'
WITH MOVE 'AdventureWorks_Data' TO 'C:\Data\datafile.mdf',
MOVE 'AdventureWorks_Log' TO 'C:\Data\logfile.ldf',
REPLACE

Referência : Pinal Dave (http://blog.SQLAuthority.com)

~\\|//~
 -(o o)- RODRIGO SILVA

Deixe um comentário