Microsoft Exchange/Office365

How to Import PST file into Exchange Server 2016

PST file import

Learn how to import PST files – Outlook Data Files – which store messages, calendar events, and more from your Exchange mailbox on Microsoft Outlook. PST files are personal folder files that reside on your computer and serve as a local copy of your Exchange mailbox items. In this article, we shall learn how to Import PST file into Exchange Server 2016. Please see How to Block Change Password for Specific Exchange Users, and How to disable Password Change for all Exchange Server Users.

Step 1: Grant Mailbox Import Export Role

The first process is to grant the right to import mailboxes to an account in your organization. Looking to migrate data? Learn how to import PST files by running this command in the Exchange Management Shell.

[PS]C:/>New-ManagementRoleAssignment –Role "Mailbox Import Export" –User Administrator

If you’re wondering how to import PST files, especially when the user importing the mailbox lacks administrative privileges. Here’s a tip: If you’re already logged in as that user, just restart your Exchange Management Shell session. This will provide you access to the new cmdlets.

Step 2: Create Network Share

To understand how to import PST files, begin by creating a Network Share for Mailbox Import in Exchange. This involves setting up a network share with read/write permission for the Exchange Trusted Subsystem group, serving as the file path for the import process.

Note: Secondly, the mailbox export request is processed by the Client Access server role.
Because multiple Client Access servers can exist in a site the request could be processed by any one of them.

To ensure that the path to the export PST file is valid for any Client Access server it has to be a UNC path to network share, not a local path.

Please see Outlook Data File: Fix PST Error – Exceeded Maximum Large Items, how to block the Change Password Feature for All Users via the Exchange Administrative Center, and How to add or remove email addresses from a mailbox.

Step 3: Importing a PST File with Exchange server Mailbox Import Request

To import a PST file to a mailbox we use the New-MailboxImportRequest cmdlet

[PS] C:>New-MailboxImportRequest -FilePath esp-ho-ex2010apstalan.reid.pst -Mailbox john.smith

Note: Therefore In some cases you might prefer to import the PST file into sub-folder of the mailbox.
You can do this by adding the -TargetRootFolder parameter to the command.

[PS] C:>New-MailboxImportRequest -FilePath esp-ho-ex2010apstalan.reid.pst -Mailbox john.smith -TargetRootFolder "Mailbox - Alan Reid"

Initiating Import Process and Folder Creation

The import request will create the target folder and begin importing the PST file contents into it.

Note: However, To bring all of the .pst files on a shared folder. Each .pst file name is named after a corresponding user’s alias.
The command creates a request for all the .pst files and brings the data into the matching mailbox.

[PS] C:>Dir SERVER01PSTshareRORecovered*.pst | %{ New-MailboxImportRequest -Name RecoveredPST -BatchName Recovered -Mailbox $_.BaseName -FilePath $_.FullName -TargetRootFolder SubFolderInPrimary}

Note: Moreover This example imports a recovered .pst file on SERVER01 into the user Ayla’s primary mailbox. Import only Inbox data from the .pst file. Import this data into Ayla’s target mailbox’s RecoveredFiles folder.

[PS] C:>New-MailboxImportRequest -Mailbox Ayla -FilePath SERVER01PSTFilesRecovered.pst -TargetRootFolder "RecoveredFiles" -IncludeFolders "#Inbox#"

Note: Monitoring the import and export status.

Monitoring the import and export status

Moreover, You can view the status of the mailbox import request using the Get-mailboxImportRequest cmdlet

[PS] C:>Get-MailboxImportRequest

By piping Get-MailboxImportRequest into Get-MailboxImportRequestStatistics you can also monitor the progress of the import

[PS] C:>Get-MailboxImportRequest | Get-MailboxImportRequestStatistics

To see all of the completed mailbox import requests run this command

[PS] C:>Get-MailboxImportRequest | where {$_.status -eq "Completed"}

To clear all completed mailbox import requests from Exchange run the following command.

[PS] C:>Get-MailboxImportRequest | where {$_.status -eq "Completed"} | Remove-MailboxImportRequest

I hope you found this blog post on how to Import PST file into Exchange Server 2016 helpful. If you have any questions, please let me know in the comment session.

Notify of

Inline Feedbacks
View all comments
Would love your thoughts, please comment.x