Proving the Restore, Part 8: Proving the Log Chain Has No Gaps
Restoring a full backup and then a hundred log backups works only if the logs form an unbroken sequence. One missing backup in the middle and the restore stops there, with the database still in…
Proving the Restore, Part 7: One File, Hundreds of Backup Sets
Point RESTORE HEADERONLY at a full backup and you get one row. Point it at the file a fifteen-minute log backup job has been appending to since Sunday and you get several hundred. Each row…
Proving the Restore, Part 6: The Differential Base Has to Match
A differential backup contains every extent changed since its base full backup. Not since the last differential, and not since whichever full is newest on disk, but since one specific full backup. Restore it onto…
Proving the Restore, Part 5: Striped Backups Are All or Nothing
Large databases are often backed up across several files at once. Instead of one 800 GB file, you get eight files of about 100 GB, written in parallel:
|
1 2 3 4 5 6 |
BACKUP DATABASE [Sales] TO DISK = N'D:\Backups\Sales_FULL_S00.bak' , DISK = N'D:\Backups\Sales_FULL_S01.bak' , DISK = N'D:\Backups\Sales_FULL_S02.bak' , DISK = N'D:\Backups\Sales_FULL_S03.bak' WITH CHECKSUM, COMPRESSION; |
The motivation is throughput. Several writers…
Proving the Restore, Part 4: Finding Backup Files Without xp_cmdshell
Everything so far assumed you already knew the path to a backup file. Automating any of it means the code has to find the files itself, and SQL Server gives you no documented way to…