SQL Server Express backup/restore error: The Media Family on Device is Incorrectly Formed

mediasql

Basically, I'm having this issue: http://www.sqlcoffee.com/Troubleshooting047.htm
What I'm doing is running a script I found online (http://pastebin.com/3n0ZfybL) to do a full backup, then rar'ing up the file and moving it to my computer. The CRC of the backup file inside the rar is correct on both computers, so there is no problem with data being corrupted when I transfer it. But then I go and try to restore the database on my dev computer here and I get the errors "sql server cannot process this media family" … "msg 3013". Why is this happening? I'd test out the backup on the server I'm getting it from, but it's a production server.

Edit: I was about to say how I wasn't doing anything stupid like trying to restore the database to an earlier version of SQL Server, but apparently I am:

From:
Microsoft SQL Server 2008 (SP1) – 10.0.2531.0 (Intel X86) Mar 29 2009 10:27:29 Copyright (c) 1988-2008 Microsoft Corporation Express Edition on Windows NT 6.0 (Build 6002: Service Pack 2)

To: Microsoft SQL Server 2005 – 9.00.3042.00 (Intel X86) Feb 9 2007 22:47:07 Copyright (c) 1988-2005 Microsoft Corporation Express Edition on Windows NT 6.0 (Build 6001: Service Pack 1)

Let me get back to this post after I reinstall this.

Edit: Ok, I removed sql server 2005 and 2008, reinstalled, and now I'm getting the same version as the production server when I select @@version. However:

System.Data.SqlClient.SqlError: The media loaded on "C:\Backup\db.bak" is formatted to support 1 media families, but 2 media families are expected according to the backup device specification.

Best Answer

You can restore forward (2005-> 2008) but you can't restore back to earlier versions.

This error means that you used multiple files for your backup, and you're only providing one of the files when you're trying to restore. Most likely the cause was when backing up using SQL Server Management Studio, somneone forgot to click "remove" to remove any existing backup destinations before you "add" the file you want to back up to.