Database Corruption Challenge

Download PDF

Database Corruption Challenge

Welcome to the Database Corruption Challenge (DBCC). If you are just finding out about the challenge, and you would like to give it a try on your own, then don’t click the links to the solutions. Give it a try, see how you do, then check the solution.

Database Corruption Challenge History

The Corruption Challenge started in April of 2015 and ran through July of 2015. Many participated, many solved corruption, and many people learned something along the way.

Blog Interviews of Top Scoring Participants

Scoring the Challenge

Here are the scoring criteria that for the first 10 weeks event.

Updated 5/31/2015.

  • Each week you can earn the following points:
    • 2 points for being the first to submit a correct solution, as long as you mention the contest on twitter, with a link.
    • 1 point for submitting a correct solution before the deadline.
    • Bonus: 1 extra point to everyone who completes the challenge before any extra clues are provided. I will wait at least 24 hours before posting any extra clues.
  • Once in the competition you can earn points for the following:
    • 1 point for creating a blog post or LinkedIn post that talks about the challenge, and links to (if you do this you should email a link to the post). For the LinkedIn Post, status updates don’t count, you need to click the “Publish a Post” link.

Current Leaders

To see the current leaders visit the current scores page.

3 comments on “Database Corruption Challenge
  1. Chris Wood says:


    You came up with lots of great corruption situations. We have an availability group setup here so I was wondering if there are any special tips for working on an availability group corruption other than perhaps dropping the database from the availability group and fixing it then adding the database back into the availability group.



    • SteveStedman SteveStedman says:


      I like working on a backed up and restored copy of the database when dealing with corruption (if possible). With availability groups, I would back up the database, fix the corruption, then put it back into the availability group.

      Another option as you suggest would be to drop the database from the availability group, fix the corruption and put it back in the availability group.

      Whatever you decided to do, be sure that the first thing you do is establish a way to get it back to the current state, because if something goes wrong that current (corrupt) state may be better than where you end up, and if you have a way to try it again that may save your database when something goes wrong.


  2. Chris Wood says:

    Thanks for the reply Steve.

    I should have followed your ‘always have a recovery plan’ approach more closely.

    Maybe you can confirm something I had heard that the corruption does not get replicated to the secondary node(s). Is this true?


2 Pings/Trackbacks for "Database Corruption Challenge"
  1. […] while back Steve Stedman (b/t) started the database corruption challange. In the very first one Brent Ozar (b/t) used a rather neat trick to recover the data. It’s […]

  2. […] while back Steve Stedman (b/t) started the database corruption challange. In the very first one Brent Ozar (b/t) used a rather neat trick to recover the data. It’s […]

Leave a Reply

Your email address will not be published. Required fields are marked *


Time limit is exhausted. Please reload CAPTCHA.