Setting the scene: I have 2 computers. On one I have an instance of SQL 2005 Express; on the other I have an instance of SQL 2005 Express, also an instance of SQL 2008 Express R2.
I have a .bak file that I want to restore a SQL 2005 Express db with. I made the bak also with an instance of SQL 2005 Express on my other computer, but when I try to restore, I get this error:
The media family on device 'C:\SELF_INSTRUCTION\DB baks\JobSearch.bak' is incorrectly formed. SQL Server cannot process this media family. RESTORE HEADERONLY is terminating abnormally. (Microsoft SQL Server, Error: 3241)
When I checked the versions of the two instances on the 2 computers, I see that the 2005 instance (that shares a machine with 2008) actually says it's SQL Server 2008.
Is there something I can do short of uninstalling and reinstalling one or more instances of SQL Server?
If the "2005" instance says it's SQL Server 2008, and if the bak file is from this actual 2008 instance, then you'll need to restore it to a 2008 instance as restore is not backwards compatible. Alternatively, you could spend the time to extract all of the objects and move the data.
Restoring Database from lower version to higher version would not give error. i.e. SQL Server 2005 to 2008 would not give error. But restoring from higher version to lower version will always result in error. In my case as i was connected to SQL Server 2005 instance it results this error message. Please check this link for more information: http://dotnetguts.blogspot.in/2010/06/restore-failed-for-server-restore.html