I am trying to restore a .bak file (backup taken on SQL Server 2008 R2, compatibility level 100). I am restoring the backup on SQL Server 2012 edition. I get the below error. Unfortunately the original DB from where the DB was backed up is no longer available. Any suggestions on how I can restore the DB to 2012 ?

System.Data.SqlClient.SqlError: Read on *** failed: 13 (The data is invalid.) (Microsoft.SqlServer.SmoExtended)

  • Which version (build) and edition of SQL server 2012? Are you restoring a database from the enterprise edition on standard edition? Also please try to upgrade to the latest service pack of 2012 - I had a funny issue like that once. But it still looks like the medium is flawed.
    – Spörri
    Apr 17, 2015 at 16:45
  • 1
    I would suggest taking another backup, to a different drive than where you took the original, and restoring it from a different drive, too. Apr 17, 2015 at 16:56

2 Answers 2


Do a Restore Headeronly With File = '...' If it still fails it's not a valid native SQL Server backup file. It's not an issue of versions.

Open it with a hex or text editor, what's the file header look like? Maybe it's compressed with a 3rd party solution like LiteSpeed and those require you to use a tool to convert to native format if you don't have it installed in this environment.


Looks fairly ominous for you I'm afraid. Likely an issue with data integrity or the validity of your drive.


  • Restore failed on a 2088 r2 version too. I am trying to restore 2008 r2 o a 2012 enterprise edition
    – SQLBlog
    Apr 18, 2015 at 17:11
  • I have opened a support ticket with Microsoft. Hopefully will find some answer
    – SQLBlog
    Apr 18, 2015 at 17:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.