Chat now with support
Chat with Support

Migration Manager for Exchange 8.15 - User Guide

Pre-Migration Activities Migration Process Calendar Synchronization Mailbox Migration Public Folder Synchronization Free/Busy Synchronization Tracking the Migration Progress Creating Batches of Synchronization Jobs Outlook Profile Update Fine-Tuning the Agents Using Agent Hosts for Migration Agents Configuring Migration Using PowerShell Appendix A. Measurement of Migration Agent for Exchange Performance Appendix B. Migrating Large Public Folders to Exchange 2013 (or Higher) and Office 365 Appendix C. Migration of Recoverable Items Subfolders (Optional)

Outlook Profile Update

The Client Profile Updating Utility automatically updates Microsoft Outlook client profiles to use the target Exchange mailboxes. CPUU (legacy name: EMWProf) updates all the profile settings associated with the Exchange server and preserves the offline folder (OST) files for the mailboxes included in Remote Users Collections.

CPUU is integrated with the mailbox synchronization agents. The utility can be run from a logon script. As a source of information about mailbox switch status, it uses two hidden messages that Migration Agent for Exchange (in case of mailbox synchronization) or Mail Source Agent (in case of legacy mailbox synchronization) creates when switching or recreating mailboxes. This makes the mailbox switch and profile update unnoticeable to the users.

When the utility updates the user profile configured for a mailbox, it also updates the mailbox rules, copies the read/unread status for the mailbox messages and preserves other additional features. This ensures that the user’s target Exchange mailbox is an exact replica of the source mailbox by the time the user first logs on to it.

Please refer to Administrator Guide for details on the Client Profile Updating Utility.

Fine-Tuning the Agents

The following is a list of additional parameters that can be applied to the agents.

AllowSwitchWithoutTargetNotification

0—Verify whether the target Exchange mailbox can be accessed before notifying user about the mailbox switch or when processing messages for CPUU during mailbox switch. If target mailbox cannot be accessed then the mailbox switch will not be performed in the current session.

1—Ignore lack of access to the target Exchange mailbox when notifying user about the mailbox switch or when processing messages for CPUU during mailbox switch.

Default Value: 0

Applies to: Mail Source Agent

NOTE: If the AllowSwitchWithoutTargetNotification parameter value is 1 then the Mail Source Agent considers the LastPSTAppliedSwitch parameter value is 0 regardless of value configured.

CopyMessagesNotOlderFilter

The Copy messages not older option in the properties of the Mail Source Agent and the Public Folder Source Agent will apply to messages of the specified types. Wildcards cannot be used to specify the parameter values.

This parameter does not apply to rules.

Default Value: For CSA: IPM.Appointment; for others: IPM.Note, IPM.Post

Applies to: Mail Source Agent, Public Folder Source Agent, Calendar Synchronization Agent

DirSyncMatchingAttribute

This parameter is used for groups matching during migration of Book-In policies.

Default Value: extensionAttribute15

Applies to: Mail Source Agent, Mail Target Agent, Calendar Synchronization Agent

HungTimeoutSec

Defines a period of time after which agent instance will be automatically restarted if agent hangs. The timeout is set in seconds.

Default Value: 7200

Applies to: All legacy agents

LastPSTAppliedSwitch

0—Mailbox switch is performed without additional check whether the PRV file with 'ready to switch' flag is already processed by the Mail Target Agent.

1—Mailbox switch is performed with additional check whether the PRV file with the 'ready to switch' flag is already processed by the Mail Target Agent.

Default Value: 1

Applies to: Mail Source Agent

MaxReceivePSTCount

-1—Agent processes all PRV (PUB) files moved from source Exchange servers to the target Exchange server where the agent is running.

0—Agent processes only PRV (PUB) files already added to configuration database during previous synchronization session.

1 or more—Agent processes the specified number of PRV (PUB) files moved from source Exchange servers to the target Exchange server where the agent is running per synchronization job.

Default Value: 1024

Applies to: Mail Target Agent, Public Folder Target Agent

MessagesToSkipTypes

Instructs the agent to skip messages of the specified types from synchronization.

Default Value: IPC.Microsoft.ICS.EventBinding, IPC.Microsoft.EventBinding

Applies to: Mail Source Agent, Public Folder Source Agent, Calendar Synchronization Agent

MigrationLockerTimeout

This parameter is involved in preventing a single mailbox or calendar from being processed by multiple agents at once. An agent locks a mailbox or calendar to work with it and unlocks it when the operation is complete. While a mailbox or calendar is locked, no other agents can process it. The MigrationLockerTimeout parameter controls the maximum lockout time for mailboxes and calendars. After this timeout, unlocking is forced. This is useful in situations where an agent fails during the operation before it can cleanly unlock the mailbox or calendar. The timeout is set in minutes.

Default Value: 240

Applies to: Mail Source Agent, Mail Target Agent, Calendar Synchronization Agent

MinAvailableVirtualMemory

This parameter sets the percentage of available memory that is restricted from the agent. The agent will not use that portion of the memory, even at maximum load. This parameter is not present in the configuration file by default. Increasing the percentage is recommended only if you experience agent database corruption. Decreasing the percentage is discouraged.

Default Value: 23

Applies to: Mail Source Agent, Mail Target Agent, Statistics Collection Agent, Free/Busy Synchronization Agent, Public Folder Source Agent, Public Folder Target Agent

ProcessPSTFromRemoteAgents

0—Processing of PST files with agent host servers used is not supported.

1—Processing of PST files with agent host servers used is supported.

Default Value: 1

Applies to: Mail Target Agent, Public Folder Target Agent

PSForceUseKerberos

0—Negotiate authentication mechanism is utilized by legacy agents to establish PowerShell session with Exchange Server

1—Kerberos authentication mechanism is utilized by legacy agents to establish PowerShell session with Exchange Server

Default Value: 0

Applies to: All legacy agents

SkipCorruptedMessages

0—Try to synchronize all messages in the mailbox (default value).

1—Skip corrupted messages without trying to synchronize them in every session.

Default Value: 0

Applies to: Mail Source Agent

SuppressMailboxValidatingOnSwitch

0—Verify presence of the target mailbox and that it can be properly processed during mailbox switch.

1—Do not verify presence of the target mailbox and that it can be properly processed during mailbox switch.

Default Value: 0

Applies to: Mail Source Agent

SuppressMoveSwitchedMailbox

0—The agent skips the Outlook data files of mailboxes that have been switched.

1—The agent processes the Outlook data files of mailboxes that have been switched (default value).

Default Value: 1

Applies to: Mail Target Agent

SyncBlackBerryHandheldInfo

0— The agent skips the BlackBerryHandheldInfo folders during mailbox synchronization (default value).

1— The agent processes the BlackBerryHandheldInfo folders during mailbox synchronization.

Default Value: 0

Applies to: Mail Source Agent

SyncDeletedFolders1— Synchronization of folder deletions is turned on.

0—Synchronization of folder deletions is turned off.

Default Value: 1

Applies to: All legacy agents

SyncDeletedMessage

1—Synchronization of message deletions is turned on.

0—Synchronization of message deletions is turned off.

Default Value: 1

Applies to: All legacy agents

SyncMailEnabled

IMPORTANT: This parameter can only be changed via Migration Manager console (Tools | Options | Advanced agents management.) See Advanced Agents Management subsection of Migration Project Options section for details and limitations.

 

0—Corresponds to never option of Create mail-enabled public folders.

1—Corresponds to If source folder is mail-enabled option of Create mail-enabled public folders.

2—Corresponds to If source folder is visible in GAL (default) option of Create mail-enabled public folders.

Default Value: 2

Applies to: Public Folder Source Agent, Public Folder Target Agent

Terminate

1—Stop the agent

0—Start the agent

Default Value: 0

Applies to: All legacy agents

UseNetUse

1—Establish a net use connection to the target server.

0—Establish a connection to the target server using trusts.

Default Value: 1

Applies to: Transmission Agent

UseRecycleBin

1—Use the Aelita EMW Recycle Bin folder during public folder synchronization.

0—Do not use the Aelita EMW Recycle Bin folder during public folder synchronization.

Default Value: 1

Applies to: Public Folder Source Agent, Public Folder Target Agent

Using Agent Hosts for Migration Agents

Although Migration Manager for Exchange agents can be installed on the same Exchange servers as the mailboxes and public folders they process, the best practice is to use standalone agent hosts.

An agent host is a server computer where you install any Migration Manager for Exchange agents (including the Public Folder Source Agent, Public Folder Target Agent, Mail Source Agent, Mail Target Agent, Calendar Synchronization Agent, and Free/Busy Synchronization Agent). The agent host server can be either an Exchange server or any other server.

For example, using standalone agent hosts is reasonable in the following cases:

  • When installing of additional software (i.e. Migration Manager for Exchange agents) on the production Exchange server is not advisable for some reason
  • If Migration Manager for Exchange agents installed on a particular Exchange server do not work correctly because of conflicts with third-part software also installed on that server

This topic explains several peculiarities of configuring agent hosts for Exchange migration.

How to Configure Agent Hosts

System Requirements

For details about agent system requirements and needed permissions, please refer to the System Requirements and Access Rights document.

Considerations

When deciding what agent hosts to use, be sure to consider the following issues.

Changing a Server’s Agent Host

Once you have configured your synchronization jobs, it is possible to set up, remove, or change the agent host server for an Exchange server, but doing so can lead to the following issues:

  • All configuration data related to synchronization jobs on the Exchange server will be deleted from the configuration databases located on the old agent host server.
  • For all configured synchronization jobs, full resynchronization will be initiated automatically and the Commit option will be enabled.

Caution:In the case of a two-way public folder synchronization job, resynchronization will be performed from the source Exchange server to the target.

After changing the agent host server, you can manually perform the Remove all resynchronization settings from agent database operation. However if the agent host for source Exchange server is changed, the resynchronization of the hierarchy will take place anyway.

  • After the synchronization jobs are committed, configuration data related to the synchronization jobs on the Exchange server will be saved into the configuration databases on the new agent host server.

Caution: For the synchronization jobs to be committed successfully, the Migration Manager for Exchange agents must be already installed on the agent host server.

Statistics Collection

Statistics information is collected only from the agent host server; no statistics are gathered from the Exchange server itself.

Caution: If several Exchange servers are associated with the same agent host server, then the statistics from the agent host server will include data about all those Exchange servers collectively.

Working with Load Balancing Solutions (Case Study: Exchange 2010 CAS Arrays)

This topic explains how to prepare Migration Manager agents for working in environments that use load balancing solutions. In such environments, Exchange migration can be a disruptive event. Load balancing solutions are useful for regular day-to-day activity, but the spikes in MAPI traffic that happen during synchronization sessions are likely to strain the load-balanced servers. This can cause a variety of migration problems, from connectivity issues to loss of data.

This information is specific to Exchange 2010 CAS arrays, but in environments where other load balancing solutions are deployed, the same technique can be useful. The procedure applies to all types of Migration Manager for Exchange agent.

Configure Migration Manager agents to bypass the load balancing facilities before you start migration. For that, add entries to the %SystemRoot%\system32\drivers\etc\hosts file on the agent host for direct connection to the individual CAS servers.

For example, suppose the CAS array uses the virtual IP address 17.80.73.49 and the virtual FQDN cas1.mycompany.corp. From this array, you need Exchange server exchange1.mycompany.corp with the IP address 17.80.36.115. In the hosts file, map the CAS array FQDN or NetBIOS name to the individual Exchange server's IP address. In this case:

17.80.36.115 cas1.mycompany.corp

–OR–

17.80.36.115 \\cas1

After you have made these changes, confirm that they are in effect. For that, ping the virtual CAS array name with the -a parameter and see the resulting IP address.

Configuring Migration Using PowerShell

Migration Manager for Exchange provides a PowerShell module named MMExPowerShell for configuring certain migration project settings using PowerShell. It is located at <MMEx install folder>\Exchange Data\Tools\MMExPowerShell and includes the following cmdlets

  • For working with migration project:
    • Get-MMExProjectOptions cmdlet returns the list of adjustable migration project parameters and their current values.
    • Set-MMExProjectOptions cmdlet allows changing values of adjustable migration project parameters.
    • Reset-MMExProjectOptions cmdlet resets current migration project parameters to their default values according to specified parameters.
  • For working with Exchange organization properties:
    • Get-MMExOrganizationProperties cmdlet returns the list of source or target Exchange organization properties.
    • Set-MMExOrganizationProperties cmdlet allows changing values of source or target Exchange organization properties.
    • Reset-MMExOrganizationProperties cmdlet resets values of specified Exchange organization properties according to specified parameters.
  • For working with collections:
    • Get-MMExCollection cmdlet returns parameters of all collections or of collections specified by its name and type.
    • Set-MMExCollection cmdlet allows changing parameters for a collection specified by its name and/or type.
    • Reset-MMExCollection cmdlet resets collection parameters to their default values according to specified parameters.
    • New-MMExCollection cmdlet allows creating a new collection with specified name and type.
    • New-MMExMessageFilter cmdlet creates a message filter that will be used to skip specific messages in the collection based on the specified parameters.
    • Remove-MMExCollection cmdlet deletes a collection specified using collection name and job type.
  • For collection member management:
    • Get-MMExCollectionMember cmdlet returns members (mailboxes, groups, containers) of all collections or of filtered collections specified by its name, type, or ID
    • Remove-MMExCollectionMember cmdlet removes specified members (mailboxes, groups, containers) from all collections or from filtered collections specified by its name, type, or ID.
    • Add-MMExCollectionMember cmdlet adds specified members (mailboxes, groups, containers) to all collections or to filtered collections specified by its name, type, or ID.
  • For obtaining synchronization statistics:
    • Get-MMExCollectionStatistics cmdlet allows to obtain synchronization statistics of all collections or of collections specified by their name and/or type. Also you can obtain synchronization statistics for filtered collection objects passed from pipeline. See Synchronization Statistics below for details.
    • Get-MMExMailboxStatistics cmdlet allows to obtain synchronization statistics of all mailboxes or of mailboxes included in a collection specified by its name and/or type. Also you can obtain mailbox synchronization statistics for filtered collection objects passed from pipeline. See Synchronization Statistics below for details.
  • For working with migration processes for specified items:
    • Restart-MMEXMailboxMigration cmdlet restarts migration for specified mailboxes. This operation is also known as Resync in user interface. See Granular migration processes below for details.
    • Suspend-MMEXMailboxMigration cmdlet suspends migration for specified mailboxes. See Granular migration processes below for details.
    • Resume-MMEXMailboxMigration cmdlet resumes suspended migration for specified mailboxes. See Granular migration processes below for details.

TIP: To obtain a list of already suspended mailboxes, run cmdlet Get-MMExMailboxStatistics as follows: Get-MMExMailboxStatistics | select CollectionName, DisplayName, IsSuspended.

  • For working with Load Balancer solutions:
    • Add-MMExExchangeRemoteHost cmdlet adds a remote host to project database. This cmdlet allows to add FQDN of remote host which is not included in project database and / or in case this host is not an Exchange Server. For example, in case the specified FQDN is used as Load Balancer solution in Exchange organization.
  • For migrated to Microsoft Office 365 mail-enabled universal security distribution group processing:
    • Set-MMExGroupMatching cmdlet searches specified source organization for mail-enabled universal security distribution groups and then copies legacyExchangeDN of each source group as an X500 address for migrated target group to set object matching. It is required to synchronize client permissions of these distribution groups. For details refer to Public Folder Synchronization (MAgE) document.
Running PowerShell with MMExPowerShell module

To start PowerShell with imported MMExPowerShell module:

  • From the Start menu on the console computer click Migration Manager for Exchange Management Shell

-OR-

  • On the console computer run the following from the command line:

C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe -NoExit -Command "& {Import-Module 'C:\Program Files (x86)\Quest Software\Migration Manager\Exchange Data\Tools\MMExPowerShell\MMExPowerShell' }"

After the operation completes, you can start using the cmdlets specified above in PowerShell.

Important: Only 32-bit version of PowerShell is supported.

Caution: If Migration Manager is installed at path other than the default C:\Program Files (x86)\Quest Software\Migration Manager, change the above command accordingly.

Getting help

To get help for the cmdlets including descriptions of adjustable migration parameters, use Get-Help <cmdlet name>.

Migration project parameters

The Get-MMExProjectOptions and Set-MMExProjectOptions cmdlets have the following syntax:

Get-MMExProjectOptions
Set-MMExProjectOptions <parameter> <value>
The Reset-MMExProjectOptions cmdlet has the following syntax:
Reset-MMExProjectOptions <parameter to be reset>

Where

  • Parameter to be reset should be specified here. In case you need to reset all parameters to default values specify -All.

The following parameters can be adjusted using the Set-MMExProjectOptions cmdlet:

Parameter name Description Values
SyncPeriodAfterSwitch

Specifies time period in minutes during which Migration Agent for Exchange continues synchronizing mail data from the source to the target user's mailbox after mailbox has been switched.

Default value: 15 minutes

Minimum value: 0 minutes

Maximum value: 1440 minutes (24 hours)

Office365License Determines which licenses should be assigned to user in Microsoft Office 365. Specify ExchangeOnly to assign user only an Exchange Online license or AllLicenses to assign user all licenses from the subscription plan selected for the project. Default value: AllLicenses

Possible values: {AllLicenses, ExchangeOnly}

MaxItemCountPerBatchUploadToO365

Specifies the maximum number of mailbox items that can be included in each batch upload during migration to Microsoft Office 365.

Default value: 32 items

Minimum value: 1 item

Maximum value: 1024 items

MaxItemCountPerBatchUploadToExchange

Specifies the maximum number of mailbox items that can be included in each batch upload during migration to Microsoft Exchange.

Default value: 32 items

Minimum value: 1 item

Maximum value: 1024 items

MaxItemCountPerBatchExportViaEws Specifies the maximum number of mailbox items to be downloaded from Microsoft Exchange or Office 365 through EWS in a single request.

Default value: 32

Minimum value: 1

Maximum value: 1024

SizeLimitInMbPerBatchUploadToO365

Specifies the maximum size in megabytes (MB) for each mailbox item batch upload during migration to Microsoft Office 365. This parameter also defines maximum size of a single message.

Default value: 40 MB

Minimum value: 1 MB

Maximum value: 112 MB

SizeLimitInMbPerBatchUploadToExchange

Specifies the maximum size in megabytes (MB) for each mailbox item batch upload during migration to Microsoft Exchange. This parameter also defines maximum size of a single message.

Note: When adjusting this value take into account that messages transferred through EWS are increased in size by 33% due to translation encoding. Therefore, parameter value multiplied by 1.33 must not exceed maximum message size limit at target Exchange.

Default value: 40 MB

Minimum value: 1 MB

Maximum value: 112 MB

SizeLimitInMbPerBatchExportViaEws Specifies the maximum size in megabytes (MB) to be downloaded from Microsoft Exchange or Office365 through EWS in a single request.

Default value: 40 MB

Minimum value: 1 MB

Maximum value: 112 MB

UseSmartResync Specifies whether to migrate only items that were not previously migrated to the target when performing resynchronization for a mailbox. If this parameter is set to false (default value), source mailbox content is completely re-migrated to the target mailbox. Default value: false

Possible values: {false, true}

ReadyToSwitchHoldingPeriod Specifies time period in minutes after which a mailbox status automatically changes from 'Ready to Switch' to 'In Progress' in case the mailbox has not been processed during this time.

Default value: 1440 minutes (24 hours)

Minimum value: 60 minutes

Maximum value: 43200 minutes (30 days)

WellKnownFoldersToSkip

Specifies the list of well-known folders that will be skipped along with their subfolders when performing a mail synchronization job.

Complete list of folders that can be specified in the list: Contacts, DeletedItems, Drafts, Journal, Notes, Outbox, JunkEmail.

Note that the following folders are always skipped:

RecipientCache, SyncIssues, Conflicts, LocalFailures, ServerFailures, Files, YammerRoot, YammerInbound, YammerOutbound, YammerFeeds

See description

LegacyFreeBusySync

Enables synchronization of free/busy information from target to source system public folders during two-way and one-way (target to source) calendar synchronization. System public folders store Free/Busy information for Outlook 2007 and earlier versions; therefore this feature must be enabled only if such Outlook versions are used in the source organization. Note that a slight increase of calendar sync latency might be expected when it is enabled (disabled by default).

In case this feature was enabled and there are no Outlook 2007 and earlier versions in the source and source system public folders exist, MAgE will trace about source public folders not found each calendar sync session.

Default value: false

Possible values: {false, true}

MaxFailedItemRetryCount Specifies the maximum number of attempts to migrate a failed item. Default value: 3

Minimum value: 0

Maximum value: 32

UseEwsProtocolForSourceIfAvailable

Specifies whether to use the Exchange Web Services (EWS) protocol to connect to the source Exchange server in migrations from Exchange 2010/2013 to Exchange 2013/2016/2019 or to Office 365. Consider, this parameter does not affect migration scenarios 2010-2010 (only EWS as source). In this case, the EWS protocol is always used to connect to the source Exchange server.

Note: If processing of a mailbox has already been started, changing this parameter will not affect that mailbox; its processing will be completed through original protocol (MAPI or EWS, respectively).

Important: This parameter should be used in conjunction with SkipAsfReceivedFlagOnBackwardSync parameter. Check whether SkipAsfReceivedFlagOnBackwardSync parameter is configured properly, as described below.

Default value: true

Possible values: {false, true}

SkipAsfReceivedFlagOnBackwardSync Skips processing of asfRecieved flag during backward calendar synchronization.
This parameter should be set true for migration scenarios with Exchange 2013 as a source processed through MAPI (see UseEwsProtocolForSourceIfAvailable parameter) if you experience duplicate appointments creation at source. Otherwise, avoid modifying this parameter.
Default value: false
Possible values: {false, true}
UseFilteringInBackwardSync

Specifies whether filter settings for a calendar collection should be applied for items synced from target to source for a switched mailbox or during two-way synchronization.

By default item filtering works only for items synced in source to target direction.

Default value: false
Possible values: {false, true}
SupportADSyncThroughThirdPartyTools

Specifies whether to support third-party tools instead of Migration Manager for Active Directory for performing Active Directory synchronization. For details how to implement such migration scenarios, contact technical support.

Default value: false
Possible values: {false, true}
UseAdvancedExchangeServerLookup

Specifies the method to find information about Exchange server during native mailbox move for New-MoveRequest creation.

NOTE: False value is intended for support purposes only. It is not recommended to change the default value.

 

Default value: true

Possible values: {false, true}

ReapplyPermissionsAfterSwitch

Specifies whether all permissions should be reapplied right after mailbox switch to ensure up-to-date mailbox folder permissions on target after the switch completion.

Scope: At the moment this parameter is applicable only for Microsoft Office 365 migration job.

Default value: true
Possible values: {false, true}
FolderClassesToSkip

Specifies the list of folder classes that will be skipped along with their subfolders when performing a mail synchronization job.

Note that the following folder classes are always skipped and this cannot be overridden by the FolderClassesToSkip parameter:

  • IPF.Files
  • IPM.ApplicationData
See description
UsePublicFolderRecycleBin

This parameter is intended for public folder synchronization using MAgE / MMExPowerShell module.

Specifies whether public folders matched with deleted (soft or hard ) public folders will be stored in created Migration Manager Recycle Bin public folder.

NOTE: If the Migration Manager Recycle Bin public folder does not exist, it will be created automatically.

Default value: true

Possible values: {false, true}

DetectNewTopLevelFolders

Specifies whether top level folders should be automatically detected by MAgE to be added to the migration project if IPM_SUBTREE is configured as public folder synchronization root folder.

Of you only want to synchronize existing top-lefel folders this parameter should remain unchanged.

NOTE:

  • If you have included the –MigrateOnly parameter when configuring the migration and have set a specific folder as root, then even with the DetectNewTopLevelFolders parameter set to True, other top-level folders will not be automatically added.
  • The value of this parameter does not affect the subfolder handling. MAgE always automatically detects and adds subfolders to the migration project.
Default value: false

Possible values: {false, true}

FixPublicFolderUniqueId Specifies whether to adjust a public folder’s unique id automatically to avoid generate duplicated public folder items or folder on source Exchange for on-premise to O365 two-way synchronization. Default value: true

Possible values: {false, true}

FixPublicFolderUniqueIdResyncFeature Specifies whether to clean up duplicate public folder items or folders which generated during the previous migration when resyncing public folders for on-premise to O365 two-way synchronization Default value: false

Possible values: {false, true}

DetectNewSubPublicFolders Specifies whether the new subfolders of migrated root folder will be automatically added to migration. Default value: true

Possible values: {false, true}

Example: Reset-MMExProjectOptions

The following cmdlet resets all parameters of the current project to the default values:

Reset-MMExProjectOptions -All
Example: Reset-MMExProjectOptions

The following cmdlet resets time period in minutes during which Migration Agent for Exchange continues synchronizing mail data from the source to the target user's mailbox after mailbox has been switched to the default value:

Reset-MMExProjectOptions -SyncPeriodAfterSwitch
Adjusting minimum processing intervals for MAgE

When mailbox synchronization is almost completed, rate of changes in content of mailboxes usually significantly slows down. Therefore, looking for changes by agents as frequent as during the main synchronization phase results in unnecessary load on agent hosts, Exchange server and SQL server. It also slows down the processing of the mailboxes which do have many changes. To work around that, you can adjust parameters that set the minimum time period that passes between attempts to process a mailbox. There are individual parameters for different collection types and mailbox statuses.

MAgE minimum processing intervals can be adjusted using the Set-MMExProjectOptions cmdlet by changing the following parameters:

Parameter name Minimum time interval in minutes that must pass before... Values
MinCalendarProcessingInterval ...a calendar can be processed again when calendar is not ‘In Sync’. Default value: 15 minutes

Minimum value: 1 minute

Maximum value: 1440 minutes (24 hours)

MinCalendarProcessingIntervalInSync ...a calendar can be processed again when calendar is ‘In Sync’ Default value: 15 minutes

Minimum value: 1 minute

Maximum value: 10080 minutes (7 days)

MinMailProcessingInterval ...a mailbox can be processed again when mailbox is not ‘Ready to Switch’. Default value: 15 minutes

Minimum value: 1 minute

Maximum value: 1440 minutes (24 hours)

MinMailProcessingIntervalInSync ...a mailbox can be processed again when mailbox is ‘Ready to Switch’. Default value: 180 minutes (3 hours)

Minimum value: 1 minute

Maximum value: 10080 minutes (7 days)

MinNativeMoveProcessingInterval ... a native move can be performed again when mailbox is not ‘Ready to Switch’. Default value: 15 minutes

Minimum value: 1 minute

Maximum value: 1440 minutes (24 hours)

MinNativeMoveProcessingIntervalInSync ...a native move can be processed again when mailbox is ‘Ready to Switch’. Default value: 15 minutes

Minimum value: 1 minute

Maximum value: 10080 minutes (7 days)

MinPublicFolderProcessingInterval ...a public folder can be processed again in case the public folder is not ‘Ready to Switch’. Maximum value is 1440 minutes (24 hours). Default value: 15

Minimum value: 1

Maximum value: 1400

MinPublicFolderProcessingIntervalInSync ...a public folder can be processed again in case the public folder is ‘Ready to Switch’. Maximum value is 10080 minutes (7 days). Default value: 180

Minimum value: 1

Maximum value: 10080

NOTE: Changes apply without restarting the agents

 

Exchange organization parameters

The Get-MMExOrganizationProperties and Set-MMExOrganizationProperties cmdlets have the following syntax:

Get-MMExOrganizationProperties –<Exchange organization properties> <parameter>
Set-MMExOrganizationProperties –<Exchange organization properties> <parameter>

The Reset-MMExOrganizationProperties cmdlet has the following syntax:

Reset-MMExOrganizationProperties –<Exchange organization properties> <parameter to be reset>

Where

  • Exchange organization properties is Exchange organization FQDN specified in Migration Manager for Exchange console.
  • Parameter to be reset should be specified here. In case you need to reset all parameters to default values specify -All.

The following parameters can be adjusted using the Set-MMExOrganizationProperties cmdlet:

Parameter name Description Values
AutodiscoverUrl

Specifies the Autodiscover URL for an Exchange organization specified by its FQDN.

N/A
PSConnectionServer The parameter is used only when SupportADSyncThroughThirdPartyTools is set to true. Specifies FQDN of the target Exchange server with which MAgE and Console will establish PowerShell session. By default, PowerShell session is created with the Exchange server that has been used to add the target Exchange organization. Also, it is possible to specify a load balanced namespace in this parameter if the load balancer is properly configured for Remote PowerShell requests.

See description

PreferInternalEwsUrl

If AutodiscoverUrl is specified for the Exchange organization and the PreferInternalEwsUrl parameter is set to True, MAgE will first try to use the internal EWS Url. The default is False, this means MAgE first tries the external EWS Url

NOTE: The parameter is used only when AutodiscoverUrl is specified.

Default value: False
Possible values: False, True

Example: Reset-MMExOrganizationProperties

The following cmdlet resets Autodiscover URL for an Exchange organization specified by its FQDN to the default value:

Reset-MMExOrganizationProperties -FQDN limbo.amazon.dmm -AutodiscoverUrl

Collection parameters

The Get-MMExCollection and Set-MMExCollection cmdlets have the following syntax:

Get-MMExCollection –Type <collection type> –Name <collection name> <collection parameters>
Set-MMExCollection –Type <collection type> –Name <collection name> <collection parameters>

The Remove-MMExCollection cmdlet has the following syntax:

Remove-MMExCollection –Type <collection type> –Name <collection name>

The Reset-MMExCollection cmdlet has the following syntax:

Reset-MMExCollection –CollectionName <collection name> –CollectionType <ollection type> <parameter to be reset>

The New-MMExCollection cmdlet has the following syntax:

  • To create Mail and Calendar collection:

New-MMExCollection -Name <collection name> -Type <collection type> -SourceOrganization <source organization name> -TargetOrganization <target organization name> <collection parameters>

  • To create NativeMove: collection:

New-MMExCollection -Name <collection name> -Type <collection type> -SourceOrganization <source organization name> -TargetOrganization <target organization name> -TargetMDB <target database name> <collection parameters>

Where

  • Name is a title of collection specified in Migration Manager for Exchange console.
  • Collection type can be:
    • Mail for a mailbox collection
    • Calendar for a calendar collection
    • NativeMove for a NativeMove collection
  • SourceOrganization

Required parameter. Specifies the source organization name or organization forest name or organization ObjectGuid.

  • TargetOrganization

Required parameter. Specifies the target organization name or organization forest name or organization ObjectGuid.

.

IMPORTANT: If two source organization names have the same name with different letter case, you can provide organization ID to specify unique organization to identify organization uniquely. Refer to Creating a new collection for examples.

Currently the following parameters can be retrieved using Get-MMExCollection (some parameters may be empty depending on the collection type):

Parameter name Description
AgentIdentity Migration agent ID for the collection. Customer can using Get-MMExAgent obtain the agent ID.
AgentServer Host of migration agent for the collection.
BadItemsSwitchLimit The maximum number of corrupted messages that a mailbox can have and still can be moved for current collection.
ClearAllSyncDataOnResync Indicates whether all synchronization data such as synchronization state of mailboxes, statistics and matching information in the database should be cleared for a collection when you perform resynchronization.
CloudUser User name of Office 365 Administrative Account for Office 365 Mail and Calendar collection
Description Description for the collection
Enabled Indicates whether the collection will be enabled or disabled
JobId ID of the job for the collection
Id Collection ID
IncludeSubContainers Indicates whether subcontainers for collection members will be included.
LdapFilter Containers LDAP filter for collection members.
MoveRequestSourceGlobalCatalog

The collection-specific remote global catalog for the source organization.

MoveRequestTargetGlobalCatalog

The collection-specific remote global catalog for the target organization.

MRSServer FQDN of the Client Access server on which the instance of the Microsoft Exchange Mailbox Replication service (MRS) runs for a NativeMove collection. This setting is used by the New-MoveRequest. For more details, see this TechNet article (https://technet.microsoft.com/en-us/library/dd351123(v=exchg.160).aspx).
MessageFilter Message filter created using New-MMExMessageFilter for collection to skip certain message classes and/or messages that are older than a specified number of days
MinProcessingInterval Specifies the minimum time interval in minutes that must pass before an item in collection can be processed again.
Name Collection name
SourceGlobalCatalog

Global Catalog server for LDAP search filter(s) at the source domain used in dynamic collections.

SourceOrganization Source organization name (including forest name)
SourceRemoteHostName

FQDN of the Client Access Server or CAS Array in the source Exchange organization from which mailboxes will be moved during native mailbox move. The value of this parameter will be used by MAgE when invoking the New-MoveRequest cmdlet as a RemoteHostName instead of automatically determined value.

StartDate Date to start processing of the collection
StartImmediately Indicates whether the collection will be started immediately or
SwitchTime

Mailbox switch time for collection.

Value $null means mailboxes will be switched manually.

Subscription Subscription for Office 365 Mail and Office 365 Calendar collection.
TargetEADomainPart FQDN of the external email address created in the source forest for the mail-enabled user when the move request is complete. The value of this parameter will be used by MAgE when invoking the New-MoveRequest. Refer to TargetDeliveryDomain parameter.
TargetMDB

Target mailbox database name for the collection.

Value $null can be specified For Mail and Calendar Collection which means mailboxes will remain in their current mailbox database.

TargetOrganization Target organization name (including forest name)
TargetRemoteHostName Remote host name of target organization for collection to match the certificate. (This parameter is intended only for NativeMove with Load Balancer solutions). In case you cannot find the remote host in the project database you can add it using Add-MMExExchangeRemoteHost cmdlet. For more details see Load Balancer solution handling.
TwoWay Indicates whether two-way synchronization will be enabled for the calendar collection.
UseAutoSwitch Indicates whether the collection will be switched automatically or not

Currently, the following parameters can be adjusted using the Set-MMExCollection and the New-MMExCollection cmdlets:

Parameter name Description Values
Enabled Specifies whether the collection will be enabled or disabled Possible values: {false, true}
Description Specifies the description for the collection. String
AgentIdentity Specifies the migration agent id for the collection. Customer can using Get-MMExAgent obtain the agent ID. Integer
TargetMDB

Specifies target mailbox database name for the collection.

Value $null can be specified For Mail and Calendar Collection which means mailboxes will remain in their current mailbox database.

Value $null cannot be specified For NativeMove Collection.

This parameter cannot be specified for Office 365 Mail, Office 365 Calendar and PublicFolder collection.

String or null
LDAPFilter

Specifies Containers LDAP filter for collection members.

This parameter can be specified for Mailbox, Calendar or NativeMove collection.

String
ExpandNestedGroups

Specifies whether the distribution groups for collection members will expand or nest.

This parameter can be specified for Mailbox, Calendar or NativeMove collection.

Possible values: {false, true}
IncludeSubContainers

Specifies whether subcontainers for collection members will be included.

This parameter can be specified for Mailbox, Calendar or NativeMove collection.

Possible values: {false, true}
SwitchTime

Specifies mailbox switch time for collection.

Value $null means mailboxes will be switched manually.

This parameter can be specified for Mailbox and NativeMove collection.

Date or null
StartDate

Specifies a start date to process the collection.

Value $null means the process will be started immediately.

Date or null
BadItemsSwitchLimit Specifies the maximum number of corrupted messages that a mailbox can have and still can be moved for current collection. This parameter can be specified for Mailbox and NativeMove collection. Integer
TwoWay

Specifies whether two-way synchronization will be enabled for the collection.

This parameter can be specified for Calendar collection.

Possible values: {false, true}
Subscription

Specifies a subscription for collection.

This parameter can be specified for Office 365 Mail and Office 365 Calendar collection.

TIP: Subscription can be retrieved as ObjectId by Get-MsolSubscription cmdlet.

Note: cmdlet interface will not validate the subscription!

String
CloudCredential

Specifies Office 365 account credential for collection.

This parameter can be specified for Office 365 Mail and Office 365 Calendar collection.

Value $null means the default Office 365 account will be used.

Note: cmdlet interface will not validate if Office 365 credential correct

Credential or null
ClearAllSyncDataOnResync Specifies whether all synchronization data such as synchronization state of mailboxes, statistics and matching information in the database should be cleared for a collection when you perform resynchronization.
This parameter can be specified only for a mailbox or calendar collection.
Default value: false

Possible values: {false, true}

SourceRemoteHostName

Specifies the FQDN of the Client Access Server or CAS Array in the source Exchange organization from which mailboxes will be moved during native mailbox move. The value of this parameter will be used by MAgE when invoking the New-MoveRequest cmdlet as a RemoteHostName instead of automatically determined value.

This parameter can be specified only for a NativeMove collection if a version of a source Exchange Server is lower or equal to a version of a target Exchange Server.

NOTE: SourceRemoteHostName must be specified in the Exchange 2013 to Exchange 2013 migration scenario if mailboxes from a particular NativeMove collection reside on an Exchange server without CAS role. Otherwise, the native move may not be completed successfully.

 
TargetRemoteHostName Specifies the remote host name of target organization for collection to match the certificate. (This parameter is intended only for NativeMove with Load Balancer solutions). In case you cannot find the remote host in the project database you can add it using Add-MMExExchangeRemoteHost cmdlet. For more details see Load Balancer solution handling.  
SourceGlobalCatalog

Specifies a Global Catalog server for LDAP search filter(s) at the source domain used in dynamic collections.

This parameter can be specified for mailbox, calendar or NativeMove collection.

 
MRSServer Specifies an FQDN of the Client Access server on which the instance of the Microsoft Exchange Mailbox Replication service (MRS) runs for a NativeMove collection. This setting is used by the New-MoveRequest. For more details, see this TechNet article (https://technet.microsoft.com/en-us/library/dd351123(v=exchg.160).aspx).  
MoveRequestSourceGlobalCatalog

Specifies the collection-specific remote global catalog for the source organization.

This parameter is only applicable for NativeMove collections.

 
MoveRequestTargetGlobalCatalog

Specifies the collection-specific remote global catalog for the target organization.

This parameter is only applicable for NativeMove collections.

 
MessageFilter Specifies the message filter created using New-MMExMessageFilter for collection to skip certain message classes and/or messages that are older than a specified number of days  
MinProcessingInterval Specifies the minimum time interval in minutes that must pass before an item in collection can be processed again.  

The following collection parameters are supported to be reset to their default values using the Reset-MMExCollection cmdlet:

Parameter name Result Applicable for
ClearAllSyncDataOnResync Resets to false Mail and Calendar collection
SourceRemoteHostName Resets to empty NativeMove collection
TargetRemoteHostName Resets to empty NativeMove collection
SourceGlobalCatalog Resets to empty NativeMove, Mail and Calendar collection
MRSServer Resets to empty NativeMove collection
MoveRequestSourceGlobalCatalog Resets to empty NativeMove collection
MoveRequestTargetGlobalCatalog Resets to empty NativeMove collection
MessageFilter Resets to empty Mail, Calendar and PublicFolder collection
MinProcessingInterval Resets to empty All
All Resets all supported parameters to their default values for current collection Mail, Calendar and PublicFolder collection

Example: Enabled

The following cmdlet disables the Mail collection col1:

Set-MMExCollection -Type Mail -Name " col1" -Enabled $false

Example: Description

The following cmdlet specifies the description for Mail collection col2:

Set-MMExCollection -Type Mail -name " col2" – Description “next round”

Example: AgentIdentity

The following cmdlet sets the migration agent for the Calendar collection col3:

Set-MMExCollection -Type Calendar -Name " col3" – AgentIdentity 2

 

Example: TargetMDB

The following cmdlet specifies target mailbox database for calendar collection col4:

Set-MMExCollection -Type Calendar -Name " col4" – TargetMDB “MailboxDatabase 3024560”

The following cmdlet specifies that mailboxes remain in their current mailbox database for the calendar collection col5:

Set-MMExCollection -Type Calendar -Name " col5" – TargetMDB $null

 

Example: LDAPFilter

The following cmdlet sets containers LDAP filter for collection for Calendar collection col1:

Set-MMExCollection -Type Calendar -Name " col1" – LDAPFilter “filterForUser”

Example: ExpandNestedGroups

The following cmdlet sets distribution groups for collection members will expand for Calendar collection col2:

Set-MMExCollection -Type Calendar -name " col2" – ExpandNestedGroups $true

Example: IncludeSubContainers

The following cmdlet sets subcontainers for collection members will be included for NativeMove collection col3:

Set-MMExCollection -Type NativeMove -Name " col3" – IncludeSubContainers $true

Example: SwitchTime

The following cmdlet sets mailbox switch time for Mail collection col4

Set-MMExCollection -Type Mail -Name " col4" – SwitchTime "6/25/2019 12:30:22"

The following cmdlet specifies that the mailboxes will be switched manually for Mail collection col5:

Set-MMExCollection -Type Mail -Name " col5" – SwitchTime $null

Example: StartDate

The following cmdlet sets the start date to process PublicFolder collection col1

$date = Get-Date -Date "6/25/2019 12:30:22"
Set- MMExCollection -Type PublicFolder -Name “col1" -StartDate  $date

The following cmdlet specifies that the calendar collection col2 will be processed immediately:

Set-MMExCollection -Type Calendar -Name " col2" – StartDate $null

Example: BadItemsSwitchLimit

The following cmdlet specifies the maximum number of corrupted messages that a mailbox can have and still can be moved for Native Move collection col3:

Set-MMExCollection -Type NativeMove -Name " col3" – BadItemsSwitchLimit 10

Example: TwoWay

The following cmdlet enables the two-way synchronization for calendar collection col4:

Set-MMExCollection -Type Calendar  -Name " col4" – TwoWay $true

Example: Subscription

The following cmdlet set the Subscription for Office 365 calendar collection col5:

Set-MMExCollection -Type Calendar -Name " col5" – Subscription “6a194eb2-1eec-4386-ac11-2sd2d3a98fbf”

Example: CloudCredential

The following cmdlet set the cloud credential for Office 365 Mail collection col1:

$PsCred =Get-Credential
Set-MMExCollection -Type Mail  -name " col1" – CloudCredential $PsCred

Example: ClearAllSyncDataOnResync

The following cmdlet enables clearing of all synchronization data during resync for a Mailbox collection col1:

Set-MMExCollection –Name col1 –Type Mail –ClearAllSyncDataOnResync $true

The following cmdlet disables clearing of all synchronization data during resync for a Calendar collection col2:

Set-MMExCollection –Name col2 –Type Calendar –ClearAllSyncDataOnResync $false

Example: SourceRemoteHostName

The following cmdlet sets the FQDN of Client Access Server or CAS Array that reside in the source organization for the Native Move collection col3:

Set-MMExCollection –Name col3 –Type NativeMove –SourceRemoteHostName ExchCAS.source.com

The following cmdlet resets previously specified FQDN of Client Access Server or CAS Array for the Native Move collection col3:

Reset-MMExCollection –Name col3 –Type NativeMove –SourceRemoteHostName
Example: TargetRemoteHostName

The following cmdlet sets the FQDN of Client Access Server or Load Balancer that reside in the target organization for the Native Move collection col3:

Set-MMExCollection –Name col3 –Type NativeMove –TargetRemoteHostName ExchCAS.target.com

The following cmdlet resets previously specified FQDN of Client Access Server or Load Balancer for the Native Move collection col3:

Reset-MMExCollection –Name col3 –Type NativeMove –TargetRemoteHostName

Example: SourceGlobalCatalog

The following cmdlet specifies a Global Catalog server for the mail collection col2:

Set-MMExCollection –Name col2 –Type Mail –SourceGlobalCatalog GC.source.com

To reset the Global Catalog server for the mail collection col2 use the following cmdlet. The GC server address will be automatically obtained from the source Exchange organization properties.

Reset-MMExCollection –Name col2 –Type Mail –SourceGlobalCatalog

Example: MoveRequestSourceGlobalCatalog

The following cmdlet sets the remote global catalog in the source organization for the Native Move collection col4:

Set-MMExCollection –Name col4 –Type NativeMove –MoveRequestSourceGlobalCatalog DCServer.source.com

The following cmdlet resets previously specified remote global catalog for the Native Move collection col4:

Reset-MMExCollection –Name col4 –Type NativeMove – MoveRequestSourceGlobalCatalog
Creating a new collection

Example: Creating a new mail collection

New-MMExCollection -Name 'm1' -Type Mail -SourceOrganization " SrcOrgName " -TargetOrganization " TrgOrgName " -Enabled $true

Example: Creating a new Calendar collection

New-MMExCollection -Name 'c1' -Type Calendar -SourceOrganization " SrcOrgName " -TargetOrganization " TrgOrgName " -Enabled $true

Example: Creating a new NativeMove collection

New-MMExCollection -Name 'nm' -Type NativeMove -SourceOrganization " SrcOrgName " -TargetOrganization " TrgOrgName " -TargetMDB "NewMailboxDatabase" -Enabled $true

Example: specify organization ObjectGuid when create Mail collection

New-MMExCollection -Name 'm2' -Type Mail -SourceOrganization "07f39ea7-ad8b-497c-9aea-6fd315baef0a" -TargetOrganization "61448b9e-6641-4272-b040-b955c00ab334" -Enabled $true

Example: specify organization forest name when create Mail collection

New-MMExCollection -Name 'm2' -Type Mail -SourceOrganization "src.forest.com " -TargetOrganization "trg.forest.com " -Enabled $true

Creating a new batch of collections from CSV file

Below you can see the CSV file example “test.csv” (this file could contains other optional parameters, please refer to New-MMExCollection parameter):

SourceOrganization TargetOrganization Name Type Enabled TargetMDB
SrcOrgName TrgOrgName nm NativeMove TRUE NewMailboxDatabase
SrcOrgName TrgOrgName m1 Mail TRUE  
SrcOrgName TrgOrgName c1 Calendar TRUE  

The following PowerShell script can be used for creating batch of collections from “test.csv file:

Import-Csv -Path "C:\test.csv" | %{
New-MMExCollection -Name $_.Name -Type $_.Type -SourceOrganization $_.SourceOrganization -TargetOrganization $_.TargetOrganization -TargetMDB $_.TargetMDB -Enabled ([System.Convert]::ToBoolean($_.Enabled))

}

 

Synchronization statistics

To obtain synchronization statistics of a collection or for mailboxes from a collection, use the Get-MMExCollectionStatistics and Get-MMExMailboxStatistics cmdlets, respectively. They can receive input from pipeline or use name or type of collection according to the following syntax:

Get-MMExCollectionStatistics -Type Calendar -Name "Collection1"
Get-MMExMailboxStatistics -Name "Collection2" -Type Mail

Where

  • Name is a title of collection specified in Migration Manager for Exchange console. This parameter is optional.
  • Type can be Mail for a mailbox collection or Calendar for a calendar collection. This parameter is optional.
    NOTE: These cmdlets are not intended to obtain synchronization statistics for NativeMove collections.

 

TIP:

The Get-MMExCollectionStatistics cmdlet can be used to retrieve synchronization statistics for collection objects that are submitted through the pipeline from Get-MMExCollection cmdlet. You can filter the collection objects using specific parameters that are not available in Get-MMExCollectionStatistics.

The Get-MMExMailboxStatistics cmdlet can be used to retrieve synchronization statistics for mailboxes from the collections that are submitted through the pipeline from Get-MMExCollection cmdlet. You can filter the collections using specific parameters that are not available in Get-MMExMailboxStatistics.

Results can be either viewed in a new console window or exported to a CSV file.

For more details, see help for the cmdlets in Windows PowerShell.

 

Example 1

This command gets statistics of mailboxes that are passed from pipeline using Get-MMExCollection and then writes the output to the specified CSV file.

PS C:\>Get-MMExCollection | Get-MMExMailboxStatistics | Export-Csv -NoTypeInformation -Encoding UTF8 -Path "C:\MMEX\export.csv"

Results in the CSV file will look as follows:

"CollectionName","CollectionId","DisplayName","MailboxId","Status","Progress","DiscoveredItems","ProcessedItems","FailedItems","SkippedItems","LastProcessedTime","Ledn","LastError"

"Collection1","3","MailBox1","3","SwitchedFinalSync","100","21","21","0","0","2018-10-18T21:09:53Z","",

"Collection2","9","MailBox2","7","InProgress","50","100","50","0","0","2018-09-08T06:59:01Z","",

 

Example 2

This command get statistics for mailboxes from the collections for which the ClearAllSyncDataOnResync option is set to True :

Get-MMExCollection | ?{$_.ClearAllSyncDataOnResync -match 'true'} |Get-MMExMailboxStatistics

 

Example 3

This command get statistics for all mailbox collections (Mail type):

Get-MMExCollection -Type Mail | Get-MMExCollectionStatistics

Granular migration processes

Detailed Description

The Restart-MMEXMailboxMigration cmdlet restarts migration for a specified mailbox to resynchronize content and permissions, or resynchronizes permissions only for the mailbox if PermissionsOnly parameter is specified.

Two resynchronization modes are available depending on PermissionsOnly parameter for the project:

  • PermissionsOnly is not set

Permissions and folder content will be resynchronized for specified mailbox (mail collection). Migration will be restarted for public folder and all currently available permissions and messages from source will be migrated to target again. It can be useful in case some messages or permissions were found to be migrated incorrectly, restart of migration forces MAgE to repeat data transferring attempt.

NOTE: MAgE will not cleanup ALL content of target mailbox. For 1-way synchronization, MAgE will reapply all permissions from the source mailbox to target and will migrate all source messages to target. If some of those messages had been previously migrated by MAgE, old copies will be overwritten (recreated).

  • PermissionsOnly is set

Permissions will be cleared from project database and then resynchronized for specified mailbox. This is the only action that will be performed. No mailbox content is affected.

Syntax

Restart-MMExMailboxMigration

-MailboxId <mailbox ID value>

-CollectionID<collection ID value>

[<PermissionsOnly>]

[<CommonParameters>]

Examples

Example 1

Get-MMExMailboxStatistics -Name "Collection2" -Type Calendar | Restart-MMExMailboxMigration

Migration was restarted for the calendar folder from the following Mailbox 'user@domain.com' (#5) from the collection 'Collection2' (#1).

This command restarts migration of a single mailbox returned by Get-MMExMailboxStatistics cmdlet.

Example 2

Restart-MMExMailboxMigration -MailboxId 5 -CollectionId 2

Migration was restarted for the following Mailbox 'user@domain.com' (#5) from the collection 'Collection1' (#2).

This command restarts migration of a mailbox with identifier 5 that resides in a collection with identifier 2.

Example 3

Get-MMExMailboxStatistics -Name "Collection1" -Type Mail | Restart-MMExMailboxMigration

Migration was restarted for the following Mailbox 'user@domain.com' (#5) from the collection 'Collection1' (#2).

This command restarts migration of a single mailbox returned by Get-MMExMailboxStatistics cmdlet.

Example4

Restart-MMExMailboxMigration -MailboxId 11 -CollectionId 5 -PermissionsOnly

This command only resynchronizes permissions for the mailbox with ID 11 from collection with ID 5.

Parameters
-MailboxID
        

Specifies internal identifier of a specified mailbox. Identifier could be retrieved using Get-MailboxStatistics cmdlet or from a log file.

Required? true
Position? 1
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-CollectionID

Specifies internal identifier of a collection that contains a specified mailbox. Identifier could be retrieved using Get-MMExMailboxStatistics cmdlet or from a log file.

Required? true
Position? 2
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-PermissionsOnly

Specifies whether permissions for the specified mailbox will be cleared from project database and then resynchronized. This is the only action that will be performed.

Required? false
Position? 3
Default value none
Accept pipeline input? false
Accept wildcard characters? false

TIP: You can find public folder identifier in the log entry, it is a number after the "M":

e.g., in the following log entry

2019-01-28 11:50:52.7225 Px1F48 Tx27 A1 C2 M7 Trace ...

public folder identifier is "7".

 

The Suspend-MMExMailboxMigration cmdlet has the following syntax:

Suspend-MMExMailboxMigration -MailboxId <mailbox ID value> -CollectionId <collection ID value>

Where:

  • MailboxId
    Specifies internal identifier of a specified mailbox. Identifier could be retrieved using Get-MailboxStatistics cmdlet or from a log file.
  • CollectionId
    Specifies internal identifier of a collection that contains a specified mailbox. Identifier could be retrieved using Get-MailboxStatistics cmdlet or from a log file. This parameter is mandatory.

For more details, see help for the cmdlets in Windows PowerShell.

Example 1

This command suspends migration of a single mailbox:

Suspend-MMExMailboxMigration -MailboxId 1 -CollectionId 1

Migration was suspended for the following Mailbox: 'SourceUser1' (#1) from the collection 'MailCollection' (#1).

Example 2

This command suspends migration of all mailboxes returned by Get-MMExMailboxStatistics cmdlet.

Get-MMExMailboxStatistics -Name "MailCollection" -Type Mail |Suspend-MMExMailboxMigration

Migration was suspended for the following мailbox: ' SourceUser1' (#1) from the collection 'MailCollection' (#1).

Migration was suspended for the following мailbox: ' SourceUser2' (#2) from the collection 'MailCollection' (#1).

 

The Resume-MMExMailboxMigration cmdlet has the following syntax:

Resume-MMExMailboxMigration -MailboxId <mailbox ID value> -CollectionId <collection ID value>

Where:

  • MailboxId

    Specifies internal identifier of a specified mailbox. Identifier could be retrieved using Get-MailboxStatistics cmdlet or from a log file.
  • CollectionId

    Specifies internal identifier of a collection that contains a specified mailbox. Identifier could be retrieved using Get-MailboxStatistics cmdlet or from a log file. This parameter is mandatory.

For more details, see help for the cmdlets in Windows PowerShell.

Example 1

This command resumes suspended migration of a single mailbox:

Resume-MMExMailboxMigration -MailboxId 1 -CollectionId 1

Migration was resumed for the following Mailbox: 'SourceUser1' (#1) from the collection 'MailCollection' (#1).

Example 2

This command resumes suspended migration of all mailboxes returned by Get-MMExMailboxStatistics cmdlet.

Get-MMExMailboxStatistics -Name "MailCollection" -Type Mail |Resume-MMExMailboxMigration

Migration was resumed for the following mailbox: ' SourceUser1' (#1) from the collection 'MailCollection' (#1).

Migration was resumed for the following mailbox: ' SourceUser2' (#2) from the collection 'MailCollection' (#1).

Related Documents

The document was helpful.

Select Rating

I easily found the information I needed.

Select Rating