Sometimes you may want to import PST files into Microsoft Exchange 2010, for various reasons. It could be that you have just migrated to Microsoft Exchange from other types of Mails servers or an older version of Exchange Server which creates too many PST files. Obviously we would never want to lose our old emails which are in the PST files. The following article will explain how you can import PST files to Exchange 2010 using PowerShell commands in Exchange Management Shell.
Importing PST Files to Exchange 2010 : Getting the Required User Rights
In order for you to import PST files to Exchange 2010, you first need to grant the required user rights. By default, Mailbox Import Export Role is not assigned to any of the built-in groups in Exchange 2010. As you may know, Exchange doesn’t allow us to add roles to built-in role groups, you can either create a new role group and grant the Mailbox Import Export Management role or simply assign it to Administrator account, according to your company policies. The following PowerShell command adds the Mailbox Import Export role to Administrator account.
New-ManagementRoleAssignment –Role “Mailbox Import Export” –User Administrator
Create a Network Share To Access the PST Files To be Imported
Once the required roles are assigned as mentioned in the earlier section, you need to create a Network share to the location where you have your PST files which are to be imported to a mailbox. You must also ensure that you grant Read/Write permission to the Network Share to the group Exchange Trusted Subsystem. You can do that by following the steps below:
Step 1: Create a Share on the folder where you have PST Files stored. You can create it either by clicking “Share” button or by going to “Advanced Sharing…” option once you right click on the folder.
Step 2: Grant Read/Write permission to “Exchange Trusted Sybsystem” group.
Note: Screenshot below is for demonstration only, it may not look the same on your PC.
Step 3: Next, you need to add the Network Share on the Exchange Server or the PC which has Exchange Management Console / Shell installed and configured. Take note of the file path after creating the network share, this is what we will be entering when we run an Import Request in Exchange Management Shell in next stage.
Using Import Request To Import PST Files to Mailbox
Next step is to create an Import Request to import the PST files from the network share you’ve just created to the specified mailbox. New-MailboxImportRequest cmdlet lets you process importing of PST files to user mailbox or archive. By default, New-MailboxImportRequest cmdlet checks for duplication of items and does not copy an item to the target mailbox or archive if a matching item is found in the target mailbox.
You can do use the Mailbox Import Request in Exchange Management Shell using the following command:
New-MailboxImportRequest -FilePath \\abcd142\backuppstfiles\backup1.pst -Mailbox backup
Checking the Status of the Import Request
You can now check the status of the MailboxImportRequest you have just carried out by using the following command:
Get-MailboxImportRequest |Get-MailboxImportRequestStatistics
Removing the Existing MailboxImportRequest
If you have multiple PST Files to import, I would suggest you process the request one after another as I encountered errors while trying to run multiple request at the same time. In such case, you can consider removing the existing request once it is processed fully. To do that:
Get-MailboxImportRequest |where {$_.status -eq “Completed”} | Remove-MailboxImportRequest
OR:
Remove-MailboxImportRequest -Identity MailboxImport
Detailed Syntax:
Remove-MailboxExportRequest -Identity <MailboxExportRequestIdParameter> [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-WhatIf [<SwitchParameter>]]
It is important to have unique name for each mailbox import requests. By default, Microsoft Exchange automatically generates upto 10 unique names for a mailbox import request. To avoid confusion, you can simply process your request one by one and then remove the previous request after completion and run the next request.
Do you find this information useful? Share it with your friends by on Facebook, Google+, Twitter or other Social Media. You can also follow me on Twitter @sarayoo.info or Google+ or Like me on my Facebook or on my LinkedIn for more updates, technology tips and tricks, iPhone, iPad, other iOS devices tips, iOS App Deals, Blogging tips, etc. Please leave your comments in the comment section or contact me if you have any other questions.