Become a Columnist Microsoft Exchange Site Microsoft Support SiteMSDN Exchange Site

   

Subscribe to OutlookExchange
Anderson Patricio
Ann Mc Donough
Bob Spurzem
Brian Veal
Catherine Creary
Cherry Beado
Colin Janssen
Collins Timothy Mutesaria
Drew Nicholson
Fred Volking
Glen Scales
Goran Husman
Guy Thomas
Henrik Walther
Jason Sherry
Jayme Bowers
John Young
Joyce Tang
Justin Braun
Konstantin Zheludev
Kristina Waters
Kuang Zhang
Mahmoud Magdy
Martin Tuip
Michael Dong
Michele Deo
Mitch Tulloch
Nicolas Blank
Pavel Nagaev
Ragnar Harper
Ricardo Silva
Richard Wakeman
Russ Iuliano
Santhosh Hanumanthappa
Steve Bryant
Steve Craig
Todd Walker
Tracey J. Rosenblath
 
   
Reducing Exchange Downtime with ExMerge
Page 1 | Page 2 | Page 3 | Page 4 | Page 5

ExMerge INI settings

The /F option is used to specify the INI file that contains all of the ExMerge settings.  For details on all of these settings see, the ExMerge.doc that comes with ExMerge.  I will be covering the key settings below.

The first setting is the MergeAction.  This value controls which mode ExMerge will run in.  0 = Extract to PST only, 1 = Import from PST only, and 2 = Extract and Import.  The first two settings are the two parts of the two-step procedure in the GUI.  When doing a migration over the LAN, for example, it should be set to 2.  This setting tells ExMerge to extract mailbox data to a temporary PST file and then load the data from that PST into the target Exchange server.  When doing a migration at a remote site change the value to 0.   Then when on-site run ExMerge to save mailbox data to PSTs.  Once you have the PST files on the same LAN as the target Exchange server, change the setting to 1 and rerun ExMerge to load the data from the PST files.

Next are the server settings, SourceServerName, DomainControllerForSourceServer, DestServerName and DomainControllerForDestServer.  For best performance, the DCs you specify should be global catalogs.  This is only required if your Exchange 2000 servers host mailboxes for users in multiple domains.  If you are working with Exchange 5.5 or only have mailboxes in a single domain, you should specify the closest DC to the system you are running ExMerge on.

The DataDirectoryName is the directory where the PST files are stored during the migration.  Remember that this directory will be used to store all mailbox data that is in the process of being migrated if using the one step procedure or all mailbox data being exported if using the two step export procedure.  The default setting in the included INI file is D:\ExMerge.  When saving mailbox data to PSTs any space saved due to Exchange's single instant store will be lost.  The increase in size due to single instant store loss is hard to guess, but I have seen a 10-20% increase on average.  Over time the amount of size saved due to SIS (Single Instant Store) decreases greatly, see Q198673 for more information.  Thus, you should make sure there is plenty of space on the volume where you will be saving the PST files.

The LogFileName setting is file path to log file that ExMerge will create.  When migrating multiple mailboxes with ExMerge and multiple threads are used, a separate log file will be created for each thread.  A best practice is creating a separate subfolder for each server you are migrating from to store the log files for that server only.  The BAT file that will be covered next will create the required directories for these log files.  The path specified must contain the entire path to the log file.  The default setting in the included INI is D:\ExMerge\Logs\Server1\ExMerge.log but Server1 will need to be changed to the real source server name.

The next important setting is SelectMessageStartDate.  When doing a migration of mailboxes it makes sense to migrate the bulk of mailbox data a week or so priory to doing the final migration.  So set this date to some value that should include all of the mail items, like 01/01/1990 00:00:00.  Next, you should set SelectMessageEndDate to some date about a month or so in the past.  This way you can migrate all mailbox data up to a month ago ahead of time, overnight or over the weekend.  If you have a large number of mailboxes and a large amount of data, it can take many days to copy all of the data from one server to another.  When you are ready to do the final migration change the start date to the previously specified end date used in the "pre-migration" and set your end date to some date in the future.  By specifying only a months worth of data there will be less data to migrate, which should enable the migration of user's mailboxes while they wait.  These date settings are also useful if you want to schedule a nightly backup of the last week of mail data for each user to a PST file.  The included script, Update-INI-Dates.vbs, includes support to read in an existing INI file and update the SelectMessageStartDate and SelectMessageEndDate so only the last week of data is processed.

Warning:
When saving mailbox data to PST files you must keep in mind that a PST can only store about 2 GB of data and 64,000 items before it becomes corrupted, in most cases.  Therefore, if you have some very large mailboxes, over 1 GB, it is a best practice to handle these mailboxes individually and break up the migration of them into small date ranges so the PST files will not grow too large.

The FoldersProcessed setting tells ExMerge to ignore or only include certain folders.  This is very useful when migrating or backing up mailboxes since you can skip certain folders, like Deleted Items.  When using this setting you need to list these folders on the ListOfFolders line.  In addition, set the ApplyActionToSubFolders setting to 1 if you want the selected action to apply to all sub folders in the ListOfFolders line.

Since we are using a TAB instead of the default of a comma, you will need to change the DelimiterUsedInMailboxFile to 1 from 0.

Next, you need to specify the file that contacts the mailboxes that need to be processed in the FileContainingListOfMailboxes.  The value you set here must match the value you set in the script, the default used in the script is <server>-MAILBOXES.txt.

 
Reducing Exchange Downtime with ExMerge Columnist's Index
Page 1 | Page 2 | Page 3 | Page 4 | Page 5

Disclaimer: Your use of the information contained in these pages is at your sole risk. All information on these pages is provided "as is", without any warranty, whether express or implied, of its accuracy, completeness, fitness for a particular purpose, title or non-infringement, and none of the third-party products or information mentioned in the work are authored, recommended, supported or guaranteed by Stephen Bryant or Pro Exchange. OutlookExchange.Com, Stephen Bryant and Pro Exchange shall not be liable for any damages you may sustain by using this information, whether direct, indirect, special, incidental or consequential, even if it has been advised of the possibility of such damages.

Copyright Stephen Bryant 2008