Hi. Can anyone remind me of the process of restoring a large database using full, differential, and tail log backups? The goal is to migrate a 500+ GB database to a new server as quickly as possible.
Backup schedule for database on source server: Full on Sunday at 10pm. Diff nightly at 10pm. Log backups hourly 9am to 9pm.
I'm guessing the process is routine, but I don't have a lot of experience with diff backup/restore, and not sure if the hourly tran log backups come into play to preserve the log chain. Can you validate my migration steps? "T" = Time when the source database is to be frozen and migration begins.
(BTW, I'll be doing this operation in SSMS).
T-4 hours:
- Suspend transaction log backups on source server (as I'm thinking they won't be needed to preserve the log chain.)
- Restore previous Sunday full backup to target server WITH NO RECOVERY (duration should be 2.5 to 3 hours).
T-2 hours:
- Restore latest differential backup (taken 10pm previous night) to target server WITH No RECOVERY (duration should be 0.5 to 1.0 hours).
- Or, guessing I could instead take a new diff backup at T-2, and restore that one. In that case, previous weeknight diffs not needed at all since I have a new one.)
T (Freeze source database and begin migration window):
- Take "tail log" backup of source database, leaving source database in recovering state.
- Restore tail log backup on target server WITH RECOVERY
Questions:
- Am I correct that tran log backups taken the day of the migration are not needed since I am restoring latest full + latest diff + tail log?
- At time "T", can I put the source database in single-user mode to restrict activity on the database, but still take a tail log backup?
- If need to roll back the migration, can I simply recover the database on the source server?
Thanks!
Backup schedule for database on source server: Full on Sunday at 10pm. Diff nightly at 10pm. Log backups hourly 9am to 9pm.
I'm guessing the process is routine, but I don't have a lot of experience with diff backup/restore, and not sure if the hourly tran log backups come into play to preserve the log chain. Can you validate my migration steps? "T" = Time when the source database is to be frozen and migration begins.
(BTW, I'll be doing this operation in SSMS).
T-4 hours:
- Suspend transaction log backups on source server (as I'm thinking they won't be needed to preserve the log chain.)
- Restore previous Sunday full backup to target server WITH NO RECOVERY (duration should be 2.5 to 3 hours).
T-2 hours:
- Restore latest differential backup (taken 10pm previous night) to target server WITH No RECOVERY (duration should be 0.5 to 1.0 hours).
- Or, guessing I could instead take a new diff backup at T-2, and restore that one. In that case, previous weeknight diffs not needed at all since I have a new one.)
T (Freeze source database and begin migration window):
- Take "tail log" backup of source database, leaving source database in recovering state.
- Restore tail log backup on target server WITH RECOVERY
Questions:
- Am I correct that tran log backups taken the day of the migration are not needed since I am restoring latest full + latest diff + tail log?
- At time "T", can I put the source database in single-user mode to restrict activity on the database, but still take a tail log backup?
- If need to roll back the migration, can I simply recover the database on the source server?
Thanks!