Proving the Restore, Part 2: HEADERONLY Changes Shape Between Versions
In I used msdb to find a database whose newest full backup had aged past a week. msdb tells you a backup happened. It doesn’t tell you the file is still readable, or which database…
Proving the Restore, Part 1: The Backup Job Said Success
A maintenance window rebooted a server in the middle of its weekly full backup. The job was killed mid-write, the partial file was discarded, and the next scheduled run was seven days out. Differentials kept…
Backup & Recovery from First Principles, Part 7: Page-Level Restore - Fixing 8 KB Instead of 8 TB
Storage corrupted one 8 KB page in a large table. One option: restore the entire database from backup, losing hours to I/O. The better option, when the damage is small and isolated: restore just that…
Backup & Recovery from First Principles, Part 6: Piecemeal Restores - Online Before It’s All Back
A 4 TB database is down. The application needs the 200 GB of hot transactional data; the 3.8 TB of archived history can wait until tomorrow. A standard restore makes everyone wait for all 4…
Backup & Recovery from First Principles, Part 5: Restore Sequences and the STOPAT Rewind
The first four parts of this series were about taking backups. This one is about the operation they all exist for. A restore sequence is a small program you write under pressure, and its grammar…
Storing Backups Locally? You have no Backups!
Me, being nice! You’ve got business critical data stored in your SQL Server, don’t you? And you’re taking backups of those databases, right? But where are you storing those backups? If you’re storing backups locally,…