Proving the Restore, Part 14: Getting the Script Out of the Procedure
The generator from builds a restore script into a variable. Getting it back out so someone can read it before running it seems like the easy part. PRINT @script returns the beginning of it. How…
Proving the Restore, Part 13: Two Vocabularies for the Same Backup
This series has used two sources for the same information. msdb records what the instance did. RESTORE HEADERONLY reads what’s in the files. They describe the same backups and disagree on almost every name. Code…
Proving the Restore, Part 12: The Files That Take No Extension
The restore script generator from worked on most databases and failed on one. The full backup restored fine everywhere else; on this database the restore refused to start. The database had two FILESTREAM filegroups. The…
Proving the Restore, Part 11: Generating the Restore Script
Everything so far establishes that a set of backups is coherent: complete stripes, a matching differential base, an unbroken log chain, one lineage, and a reachable target time. Writing the restore statements from that point…
Proving the Restore, Part 10: Can You Reach That Point in Time?
Someone asks you to restore a database to 14:30 yesterday, just before a bad deployment. The answer is either a time estimate or “the closest I can get is 14:15”, and which one it is…
Proving the Restore, Part 9: Backups From a Different Database
Two backup files, same database name, same server name, LSNs that line up. They can still be from different databases. Database names get reused. A database is restored under a new name, then renamed back….