MSExchangeGuru.com

Learn Exchange the Guru way !!!

 

Database Portability Recovery for Exchange 2010 Database

Let us look at how to take advantage of database portability feature with Exchange 2010

Scenario: There is a mailbox server which was not part of DAG has crashed.

Recovery:

When there is a need to recover a mailbox database into production from a server crash then you have 2 options.

1. Using database portability – Exchange 2010 allows you to mount the database in different server which is called database portability.

We will follow the below steps:

So we can just restore the database then mount as new database then move the configuration of the mailboxes to this database.

2. Restoring the same server. To restore the same server follow the below steps:

Steps are mentioned in below link:

Recovery Steps Option 1:

Restore Using database portability:

Follow the below steps to restore the back up:

Add the Lun (disk) on the other Production Server (which will be used to run this database) of the same size of the backup.

Note: Merging the database or swapping them will be faster if we restore the backup on the Production Database

Warning: If you decide to restore on Production database, please ensure you have enough hardware available to support the restore process.

  1. To save time of Database recovery, we will restore the Database in the recovery database and mount a blank database using dial tone recovery to restore services asap. So users will be able to send and receive the emails but old email will not be available until we finish this restore.
  2. Type the following cmdlet to do the dial tone recovery.
    1. Login to the server, open the Exchange management shell and run the below cmdlet
    2. New-MailboxDatabase -Name “Name of the new Database” -Server servername -EdbFilePath DBfilepathdbname.edb -LogFolderPath “Logfile path”
    3. Mount-database “Name of the new Database”
    4. Set-mailboxdatabase “Name of the new Database” –AllowFileRestore:$true
    5. Get-Mailbox -Database <SourceDatabase> |where {$_.ObjectClass -NotMatch ‘(SystemAttendantMailbox|ExOleDbSystemMailbox)’}| Set-Mailbox -Database <TargetDatabase>
    6. Replicate Domain Controllers

At this point all users will be able to connect to the exchange server and send/receive emails. Now we will restore the backup.

  1. Create the directory tree for the recovery database DB and Logs on the recovery server
  2. Open the cmd prompt and Run the following cmds on the same server:
    1. mkdir Driverletter:RDB
    2. mkdir Driverletter:RDBDB
    3. mkdir Driverletter:RDBLogs

We will be using RDB as recovery database name

  1. Create and mount the recovery database: Run the following cmdlets in the exchange management shell:
    1. New-mailboxdatabase –recovery -name RDB -server Recoveryservername -EdbFilePath “Driverletter:RDBDBDBName.edb” –logfolderpath “Driverletter:RDBLogs”
    2. Mount-database –identity RDB
    3. Set-mailboxdatabase RDB -AllowFileRestore 1
  2. Restoring the Database from backup:

Now you are ready to restore the backup from your restore software. Start the restore from your backup software. Ensure you select alternate location to restore and give recovery server and recovery DB name.

  1. Restore from DPM: Check the below link for the steps to restore from DPM

    http://msexchangeguru.com/2013/04/02/exchange-2010-dpm/

  2. Restore from Backup Exec: Check the below link for the steps to restore from backup exec.

    http://msexchangeguru.com/2013/04/04/backup-exec/

  3. Once restore completes we need to swap the production and recovered database then merge them.
  4. Dismount the Production Database and Recovery Database by running the following command.

        Dismount-database –identity DBName

Swap the value of the following AD attributes for both the databases from ADSIEDIT.MSC

Warning: ADSIEDIT should be used by an expert because a wrong change can cause a big outage

  1. msExchEDBFile
  2. msExchESEParamLogFilePath
  3. msExchESEParamSystemPath
  4. msExchESEParamBaseName

You will find these attributes in the properties of the Database under Configuration à Services à Microsoft Exchange à Organization name àAdministrative Groups à Exchange Administrative Group à Database àDB Name

  1. Once you have changed the path run the following cmds for both the Databases:
    1. Set-mailboxdatabase DBName -AllowFileRestore 1
    2. Mount-database –identity DBName

    Databases should be mounted without any issue. Now users will see old mails back but new emails missing which we will merge in further steps.

  2. Now we have to merge multiple mailboxes which will require the below cmdlet in EMS.

Foreach ($mailbox in Get-MailboxStatistics -Database RDB) {New-MailboxRestoreRequest -SourceDatabase RDB -SourceStoreMailbox $mailbox.DisplayName -TargetMailbox $mailbox.DisplayName

We can run the below cmdlet in EMS to check the status of the restore

Get-MailboxRestoreRequest -Status Queued

We should be good with the data of the user’s once pervious command shows completed. We can call a Database Portability recovery has completed.

Post restore cleanup:

  1. Dismount-database –identity RDB
  2. Remove-mailboxdatabase –identity RDB
  3. Delete the files on the file system manually.
  4. Remove the Lun/Disk from the server.

If you are stuck somewhere Please feel free to get in touch with Exchange Gurus here.

Prabhat Nigam | MVP Exchange

Team @MSExchangeGuru

Keywords: Exchange 2010 database portability, how to recover a database in exchange 2010

27 Responses to “Database Portability Recovery for Exchange 2010 Database”

  1. BJ Says:

    Quote:
    Now we have to merge multiple mailboxes which will require the below cmdlet in EMS.
    Foreach ($mailbox in Get-MailboxStatistics -Database RDB) {New-MailboxRestoreRequest -SourceDatabase RDB -SourceStoreMailbox $mailbox.DisplayName -TargetMailbox $mailbox.DisplayName
    ———-
    In our DR scenario we would have to restore 4 mailbox databases. Say we restored database1 successfully and were at the point of merging the recovery database as well as the temp database.

    How would the above command would work if a user (who was originally in database2) was waiting for mailbox database 2 to be restored. This user now has data in the RDB database. Would the above command merge their mailbox into database1 even if they are waiting for the restore of database2?

  2. Prabhat Nigam Says:

    BJ

    I think you are missing something.
    If the user belongs to DB2 and you have restored DB1 then DB2 user will have no effect. The cmd will query only the mailboxes in the restored or temp db.

    -Make sure you swap restored DB with new DB and then merge because new DB will have less data.

  3. SrdjanM Says:

    Fantastic article, thank you very much. Would this procedure also apply to 2013?

  4. Prabhat Nigam Says:

    yes

  5. Satendra Rawat Says:

    Thanks for this wonderful article.

    Refer this article, you have mentioned “Scenario: There is a mailbox server which was not part of DAG has crashed”.

    I just would like to know, what if i would like to follow this article for recovery where servers are part of DAG.

    Actually, We have Exchange organization with 2 member DAG, and each has role CAS/HUB/MBX. We are planning to install third exchange with all three role in different location which could be in different site or in same sit. It will have same configuration as like other exchange server except it won’t be member of DAG.

    We want to use this server only for recovery purpose when something happen to our primary site, we will just follow your article and recover the server.

    Please suggest, Is it a workable solution for recovery? Please let me know if it could generate unexpected issue.

  6. Prabhat Nigam Says:

    If the server is part of DAG then you just need to install new server and do database seeding so recovery steps are strictly for non-DAG server.

    You can’t be sure that 3rd server will not crash so use all of them in prod and if anyone crash then you will still have 3 servers.

  7. Satendra Says:

    Thanks for your response Prabhat. Actually, We are planning for Disaster Recovery. W have warm DR site, having all Hardware ready and wish to recover complete exchange server. As in current environment, We have 2 Node DAG and CAS array but in DR Site , We had provisioned only one physical server for exchange recovery. I know, it bit complicated but we have no other choice right now.
    Now, In our scenario, What would be the best approach in the following to recover exchange serve through Backup. We are taking backup through Symantec Backup Exec.

    1)Recover Exchange Server using “Setup /m:RecoverServer”
    2)Dial Tone Recovery
    3)Keep one server with all role and use Database portability feature if any disaster happened.

    Note: We don’t have any good WAN connectivity, so we can’t opt for DAG cross site. Even we don’t want any kind of Cross-site High Availability and doesn’t want any traffic to reach our DR site.

  8. Prabhat Nigam Says:

    Cross site wan link is the most important component here.
    You need a DC with GC in DR site and an exchange with all role is a good thought for ur situation. And when primary site goes down then do the dial tone recovery with move-mailbox -configurationonly. Once primary site is up run move-mailbox -configurationonly then merge the new email to the old database.

  9. Satendra Says:

    Thanks Prabhat. But we want to merge restore database with newdatabase so that user would have all old emails as well. We are considering complete disaster and want to run all services from DR site only for time being. Now, I have below concern.

    1) What’s the impact to outlook client? I don’t want to reconfigure the outlook profile.
    2) How I can restrict, any client traffic reach to DR site?

    Like Public Folder access, Shadow Redundancy. I am worry , It should not start routing email from DR server if any one server down in DAG.

  10. Prabhat Nigam Says:

    You will have to copy the new db to primary site to merge it because you said that the wan link is not good. If the wan link is not good then how will the backup reach to DR.
    For Clients connectivity you need to move their mailbox config for which you can run the command move-mailbox -configurationonly
    Cient traffic will go with client access array which belongs to one AD site which is not DR so clients will not go to the DR site.
    Shadow Redundancy is for DAG so you will loose this in case of DR
    No, it will not route mails from DR. Mail routing needs to be manually changed by you.

    I would recommend you to take professional DR consulting and documentation services. write me if you need prabhat@msexchangeguru.com

  11. Satendra Says:

    We will restore data from tape to DR site on same server. Actually, We are just need a way out if in case disaster happened. Earlier, We thought to have Single server (All role) with DAG but will not create database copy. It would help us easy recovery, We will just restore the data from the tape in to DR site server and will follow database mobility to recover the database. We have to dropped this plan because WAN un-stability which may cause database switch over any time when one of the server is down and WAN is not available.

    Now we are just thinking to have either one Exchange server ready always or recover exchange from AD site. What would you suggest in this case which is easy and have less troubleshooting.

  12. Prabhat Nigam Says:

    Keep one exchange but AD DC should sync always.

  13. Satendra Says:

    Thanks for confirmation Dear but still need more clarification if you don’t mind.

    1) How to point to outlook client to new DR site as they have still old cas-array name in profile?
    if we point the old casa-rray name to IP of DR exchange server IP. Will it work with all clients?
    2) If we restore the database in new server and keep all drives (Database and Logs location) same like old server.
    Can we mount the database and use it directly after bring restore database in clean shutdown state?

    Actually, We are planning to test this scenario and need your expertise if anything I am missing to achieve this.

  14. Prabhat Nigam Says:

    You need to change DNS IP and AD site of the CAS Array
    Yes, DB can mounted.

    Like I said you need professional services because I can sense the DR expertise level of yours, there are more things to measure like SLA, BCP, where is DR site, Flying to the DR Site will be faster or restoring back, how will you restore of whole site is down means you need to backup server in the DR site and it should be able to replicate the backup set. Will it be good deal active DR site or wait for Prod site to come back.

  15. Satendra Says:

    Dear Prabhat,

    First thanks for your clarification.

    As suggested by our Auditor after discussing with our managment, Our DR site should be a COLD site. Where our RTO and RPO is 3 and 1 day respectively.

    To make it better , We thought to keep one ADC live there as we can bear replication of AD over WAN and for easy recovery.

    We did BIA(Bussiness Impact Analysis) and find out the services which reuired for Bussiness Continuity.

    We have already purchased 4 servers for AD,Backup Server,Exchange Server and ERP application.

    As our backup offsite location and DR site is hardly with in 20 KM from Primary site, we can arrange backup set with in an hour to DR site in case of disaster.

    I am hoping we have considered all the prospective realated to DR planning as per bussiness requirement and we cann’t go beyond DR plan approved by Management.

    If you still think, We should consider the other things, Please suggest me pointwise, so that I can take it to my senior and ask for amendnment in current DR plan.

    As i mentioned earlier, We don’t want highavailability and less maintenace of DR site after considering the follwoing points

    a. Least maintenance.
    b. Least cost.
    c. 3 days RTO.
    d. Least work at DR time.
    e. Minimum restore time.

    Hoping to hear you soon with valuable suggestion.

  16. Satendra Says:

    Hi,

    First thanks for your earlier support. We did our DR testing able to bring online our server and services. For that, We recovered DC and One Exchange server (Bare Metal recovery). We have restored one month old database and mount it . Everything is working fine. DR setup is completely in private network in remote location.

    Now, We want to test with live outlook client, which have latest emails in OST. It’s connecting and working fine. But when we are checking OWA, it only showing the old email which is restored from in time backup. but it’s not syncing emails from outlook to exchange servers.

    I want to know, why it’s happening? Why its not synching OST emails to restored mailboxes. I need your urgent support in this regard.

    I read following article but still it’s not clear. As per these articles, exchange server’s mailbox is authoritative , so it will either delete the OST emails which were not in backup set. But, When i tested, neither it’s deleting
    non it’s updating from outlook to server mailbox. Please suggest if anyone can help me.

    http://searchexchange.techtarget.com/answer/What-happens-to-ost-files-after-restoring-an-Exchange-backup

    https://social.technet.microsoft.com/Forums/office/en-US/89be9383-6efa-400e-9978-db13b88313f6/what-happens-to-ost-files-when-an-old-exchange-backup-is-restored?forum=exchangesvravailabilityandisasterrecoverylegacy

    http://serverfault.com/questions/612315/exchange-restore-backup-what-happens-to-local-ost-files

  17. Prabhat Nigam Says:

    Owa is showing true mailbox.
    Outlook ost is a local cache which will not be transferred to exchange mailbox. You might like to use ost to Pst converter then merge the Pst data to the server.

  18. Satendra Says:

    Ok.. But my outlook clients having latest emails which are now connected with restored databases and working fine. Only issue is latest emails are no synching with the restored mail box. I don’t understand what’s the logic behind this. I am not sure, but I think, it should sync both side. Even, in production environment it’s like that, if you deleted and added anything in outlook (cached mode), it reflect the same in OWA. Why it’s not happening after database restored?

  19. Prabhat Nigam Says:

    Try to configure outlook on a new computer where you never created the outlook profile. Let me know if you see the email.

  20. Satendra Says:

    Let me tell me more about my testing after recovery of exchange server from one month old backup.

    1) Prepared a new computer and configure outlook, it was showing the emails on the basis point in time backup. it means it has one month old mailbox and working now.
    2) Then, I connected one computer which was in production environment and having latest emails. It’s working fine and I can send and receive emails. But OWA is showing only old mailbox and any latest email which I sent after connecting with old database. while outlook has all emails.

    I want to know, Exchange mailbox is only authorize to sync to outlook or it is both side synching ?

    I couldn’t able to understand why it’s not working. Even,over the internet there is no clear clarification.

    Thanks for your support in advance.

  21. Prabhat Nigam Says:

    Did you merge the new database? I don’t think.

    You are assuming that ost will sync it but this is not a correct assumption.

    You need to convert ost to pst and import it to the mailbox.

    Only new emails sent in the offline mode will be synced from ost.

  22. satendra Says:

    This is not a new database. I did complete server recovery and only restored the database to original location. My databases was in a clean state. Just mounted them forcefully. Nothing else.. No dial tone recovery. No restore database group.

    Its like complete in time server recovery first and then restored the databases. Following was my steps for recovery.

    1. Recoverd complete server with SDR bare metal recovery
    2.Start DAG cluster forcefully
    3.Change the witness server
    4. Start the DAG cluster normally
    5. Prepare disk drive structure same like in production
    6. Restore Database and Logs through symantec in original location.
    7. Mount databases and changes client setting for public folder pointing to recovered server

    All services are working fine but databases all on month old.

    So till now there is no change and its a complete duplicate server in a separate network but having exactly same AD and Exchange servers with single node DAG as we have recovered only one exchange server.

    Now, if we connect any one live client to this network temporarily. It should sync both side as there is no change at all for client as its a same infrastructure.

    I hope now I m able to clear. Pls suggest.

  23. Prabhat Nigam Says:

    If you are trying to sync emails for the period between backup and restore from ost then forget it.

    It will not work this way.

  24. Satendra Says:

    Thanks for your support. but just for curiosity, Is there any supporting reason you can give me if possible? Actually, I know this question will be raised by my Senior. I tried my level best but couldn’t able to find any solid reason with supporting document. There is different opinion all over the internet.

    Thanks again for your continuous support and great articles. you helped me a lot.

  25. Sean C Says:

    … in a DB portability scenario for recovery, how are in-place/online archives handled?

    I have successfully used this scenario for primary mailbox DB’s but the in-place archive does not re-home.

  26. Prabhat Nigam Says:

    Well I have not tested the archive mailbox database but it should not be an issue. I will test it asap. I have a 2010 in my lab for 2010 to 2016 migration.

  27. Exchange 2013/2016: Ease of Database Portability « MSExchangeGuru.com Says:

    […] wrote about the use of Database portability in a Disaster Recovery scenario here. […]

Leave a Reply

migrate exchange to office 365

Categories

Archives