Updated On - October 14, 2022 by Nasir Khan |Reading Time: 4 minutes
It is very common for user to migrate Exchange mailboxes to another database. For this purpose, most users are now using the PowerShell Command-Line (New-MoveRequest command line). An Exchange Administrator can easily transfer mailbox databases in the Live Directory forest from one database to another via the New-MoveRequest command.
Users may move mailboxes in almost all Exchange versions (like 2010/2013/2016/2019) using “Exchange Management PowerShell.” Migration between the same Active Directory forests is referred to as a “local move request,” whereas migration between other forests is considered a “remote move request.”
Let’s learn about the Exchange Management Shell (PowerShell)
The Exchange Management Shell is based on Windows PowerShell technology and offers a robust command-line functionality for automating Exchange administration operations. It may be use to handle all aspects of the exchange. You may, for instance, establish email accounts, send and receive connections, set mailbox database characteristics, and configure distribution teams.
You may use the Exchange Management Shell to conduct any job that is accessible in the Exchange graphical management tools, as well as those that are not available in those tools (for example, bulk operations).
In reality, whenever you perform an action in the Exchange admin center (EAC), the Exchange Control Panel (ECP), or the Exchange Management Console (EMC), the Exchange Management Shell is responsible for the work behind the action sequences.
The Exchange Management Shell also includes a powerful and adaptable coding environment. Visual Basic scripts with numerous lines of code can be supplanted by Exchange Management Shell commands with as few as one line of code.
Because it employs an asset model based on the Microsoft.NET Framework, the Exchange Management Shell gives this adaptability. Exchange cmdlets can use this object type to apply the outcome of one command to future actions.
Let’s discuss how you can migrate Exchange mailboxes to another database using the New-MoveRequest cmdlet.
Migrating Exchange mailbox data to another database is a common affair for users, and there are various methods available for this purpose. Within them, the usage of New-MoveRequest is well known. But the process has some usage of critical codes or command lines. Read the process as follows:
1. First and foremost, you must obtain the mailbox database that contains the user’s mailbox. Execute the following command in the Exchange Management Shell (known as EMS):
“Get-Mailbox jkurtin| Format-List Database”
(In the above instance that you can see in the image, a user’s mailbox is stored in the “DB01” database.)
2. The New-MoveRequest cmdlet is generally used to generate a local or basic request to relocate or move a mailbox. As an example code line:
“New-MoveRequest -Identity jkurtin -TargetDatabase “DB02″ –BadItemLimit 10”
Here in this code, “jkurtin” is a username. It differs from user to user, as everybody needs to use a unique username.
In this command, “TargetDatabase” is the name of the mailbox database to which you wish to relocate or move a mailbox.
Are you aware of what the “BadItemLimit 10” is in this code? Actually, it is the number of damaged objects in the mailbox that may be bypassed or ignored when the mailbox is being moved. In this command line, we have set the limit for bad items to 10.
[ Note: If “BadItemLimit” is set to 0, the mailbox will not be copied to the destination database if any corrupted items are discovered. If you set “BadItemLimit” to more than 50, you must also include the AcceptLargeDataLoss option.]
3. Then in the cmdlet you can see the mailbox and archive sizes (see in the picture “TotalMailboxSize” and “TotalArchiveSize”), as well as a message indicating that the transfer request has been line.
4. Use the command-line as follows to transfer all mail from one Exchange database to another:
“Get-Mailbox -Database DB01 -ResultSize Unlimited | New-MoveRequest -TargetDatabase DB02″
[Note: To perform the migration, you must use the Arbitration option.]
5. Moving a mailbox might take a lengthy time based on the volume of the mailbox and the location of the target server. You can use the following command-line to track the mailbox migration status in percent.
“Get-MoveRequestStatistics -Identity jkurtin”
6. When the migration is finished, the “PercentComplete” number will hit 100, and the migration status will be changed to “Completed.”
Related Post: How to Setup Outlook with Exchange Server?
Perform the Exchange migration using professional software
If you are not experience with any programming language or any technical expertise, then it might be critical for you. However, you can use the Regain EDB to PST Converter software.
It is a powerful tool for converting both offline and online EDB files from Exchange Server databases into Outlook PST files. This expert program may extract a single or numerous messages based on your requirements.
Generally, users who need to migrate their Exchange mailboxes to the Outlook database find that this software is so much more efficient for them. Besides, PST formatted files are more secure than others, so it can be a great option for backing up your important Exchange data.