Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have tried to understad how database restore works in SQL Server. I have read from BOL about different phases within the restore operation but did not understand much. Can you please clarify what these different phases do?

share|improve this question
If you want to get all the details then read the ARIES paper: – Remus Rusanu Sep 29 '10 at 21:52
up vote 0 down vote accepted

To understand the phases you'll need to have a basic understanding of the recovery models and how they work.

data copy: restore the full and then differential backups you have of the databases.

redo: this rolls forward your logs effectively redoing the database changes that were lost prior to the point of failure. This is optional and won't happen in the simple recovery model.

undo: this looks at the previous restored logs and rolls back any transactions that were added to the logs but not committed to the database.

Those are the basics but obviously if you're not familiar with the recovery models they probably won't make much sense. A better answer could be provided if we had an idea of what you're trying to do.

share|improve this answer

My understanding:

Analysis pass through is done to build a dirty page table and an active transaction table from the last checkpoint. Redo gets locks for oldest open trxn as prep for reapplying changes from the open trxn. Undo rolls back uncommitted trxns.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.