TechEd session video available…

The session I gave at TechEd this year on ‘Secrets of Fast Detection and Recovery from Database Corruptions’ was videotaped as part of the Its Showtime! TechEd program. The video is now available to watch at This is the same session I’ve been delivering to user groups around the world for the past few months but… Read more

How long does *your* CHECKDB take?

Following on from my post a couple of weeks ago (, I’m very interested to know how long it takes for your CHECKDBs to run, so I can get an idea of the distribution of run-times on various kinds of hardware for various size databases. So, if you have a couple of minutes, I’d be… Read more

CHECKDB (Part 8): Can repair fix everything?

I was teaching at a Microsoft-internal class last week and there was a discussion on what corruptions can’t be repaired using DBCC. At the same time, several threads popped up on forums and newsgroups with people hitting some of this unrepairable corruptions so I thought that would make a good topic for the next post… Read more

CHECKDB (Part 7): How long will CHECKDB take to run?

This is a question I see every so often and it cropped up again this morning so I’ll use it as the subject for this week’s blog post. There are several ways I could answer this: the unhelpful answer – I’ve got no idea. the almost-helpful answer – how long did it take to run last… Read more

CHECKDB (Part 6): Consistency checking options for a VLDB

(Yippee – just finished my certification dives and got my PADI Open Water certification – just in time for our dive trip to Indonesia in December 🙂  This is a question that comes up a lot – in fact 3 times this week already – most recently during a guest lecture I did on DBCC… Read more

CHECKDB (Part 5): What does CHECKDB really do? (part 4 of 4)

(Another airport, another blog post – I really must make an effort to come up with more original banter – I’m sure I’ve used that line before. TechEd Guangzhou has finished and I’m on the way to Beijing for TechEd #3. Checking in and getting through security were challenging to say the least this morning… Read more

CHECKDB (Part 3): What does CHECKDB really do? (2 of 4)

In the previous post of this series, I covered the system table checks that have to be done before anything else can be checked by CHECKDB. Now that I’ve described pages, extents, IAM chains/allocation units and the major allocation bitmaps, in this post I’ll cover the allocation checks. 1. Primitive checks of critical system tables(Part 1…)… Read more