Microsoft KB Archive/843092

From BetaArchive Wiki
Knowledge Base


When you restore an Exchange Server database from backup to the production location after you mount a blank database, the resulting database contains information only since you mounted the new blank database

Article ID: 843092

Article Last Modified on 1/2/2008



APPLIES TO

  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange 2000 Enterprise Server
  • Microsoft Exchange 2000 Server Standard Edition



SYMPTOMS

In Microsoft Exchange Server 2003 or in Microsoft Exchange 2000 Server, when you restore a database from backup to the production location after you mount a blank database, the resulting database contains information only since you mounted the new blank database.

The database files will also appear to shrink to a much smaller size than expected.

CAUSE

In Exchange 2000 and in Exchange 2003, this problem occurs if you restore a particular store without deleting all the transaction logs first. When you mount a blank store, it records the createDB transaction in the transaction logs. Then when you restore the same store, it plays through the logs off of the backup in addition to the logs in the transaction log directory.

In this scenario, the restore does bring back all the old data, but as you play through the logs in the production transaction log directory, you eventually hit the createDB transaction. This causes you to unknowingly mount blank databases again. The createDB transaction is then completed with the rest of the logs. Therefore, you only have the mail from the time period after you mounted the blank database.

To summarize what occurs:

  1. Restore runs and is completed. The restored database is on the hard disk.
  2. Hard recovery starts. Logs are starting to replay in the database.
  3. The log that has the createDB transaction is also replayed. This creates the new database, as intended.
  4. Replay of any logs after that log is completed. That gives you only the mail that was received after the blank database was created.

The createDB transaction is just another transaction for your database engine. It is replayed the same as any other transaction.

Note This createDB transaction behavior did not occur in Microsoft Exchange 5.5 or in earlier versions of Exchange. It only occurs in Exchange 2000 and in Exchange 2003.

RESOLUTION

Exchange 2003

If you mount a new blank database in production, do not restore your backup to the production location. Instead, continue to run on the new blank database and restore to the Recovery Storage group per the "dial tone" recovery process.

824126 How to use Recovery Storage Groups in Exchange Server 2003


For more information about how to recover a mailbox database by using a "dial tone" database in Exchange Server 2003, visit the following Microsoft Web site:

Exchange 2000

You must restore the database from tape to a Recovery Server and then merge the two databases together by using Exmerge. For information about how to do this, see Method 2 in the following article in the Microsoft Knowledge Base:

813337 How to recover or restore a single mailbox in Exchange 2000 Server


MORE INFORMATION

For additional information, click the following article numbers to view the articles in the Microsoft Knowledge Base:

271987 Overview of Exchange Server database architecture and database engine


326052 White Paper - Disaster Recovery for Microsoft Exchange 2000 Server


For additional information about Exchange 2000 Server Database Recovery, visit the following Microsoft Web site:

Keywords: kbprb kbinfo KB843092