Trending Articles

Blog Post

Technology

How to Migrate Public Folders from one Exchange Server to another?

How to Migrate Public Folders from one Exchange Server to another?

Migrating public folders from an older Exchange Server (such as 2007) to a newer version (like 2013 or beyond) can be complex and time-consuming. This guide walks you through the native Microsoft process using PowerShell scripts, and also introduces a faster, more efficient alternative using Stellar Migrator for Exchange.

Migrating mailboxes from old Exchange Server to a newer Exchange Server is a tedious operation. It can be a real struggle if you’re migrating public folders from old Exchange Server to a newer Exchange Server. In Office 365, public folders are not used much as SharePoint and Groups are mostly used. In on-premises Exchange Server, public folders are used to hold information and other data. So, Exchange server public folder migration is crucial for certain custom apps and business processes. The other reason is that on-premises SharePoint deployment can be quite costly for small businesses.

Procedure to Migrate Public Folders from one Exchange Server to another

There is an option to export public folders by using Outlook. However, it is not recommended as large PST files are not supported by Outlook and you need to somehow split the data. There is no continuity if the process is stopped or cancelled. It is a cumbersome process and would take a lot of time to complete.

To start public folder migration, there are some requirements and assumptions that need to be taken into consideration. These are:

  • The user who will be used for the migration has the roles of Organization Management and Recipient Management.
  • Removed spaces and special characters from names and aliases of the public folders prior to migration.
  • Expect downtime for the last steps of the migration.

Pre-Migration Steps for Public Folder Migration

Native Migration Method

Important Note: Before you start the migration, take an ad-hoc backup so that you can failback in case something goes wrong during the migration.

Step 1: Download Microsoft Scripts

  • You need to download the Public Folders Migration Scripts from the Microsoft Download site using the link: https://www.microsoft.com/en-us/download/details.aspx?id=38407.
  • Save them in your Exchange Server.
  • Usually, I like to create a folder for scripts under the operating system drive and save all my scripts there. It is up to you where you want to save them.
  • Once you are ready, you can start off by preparing the migration.

Step 2: Export Folder Structure (Source Server)

  • From the Exchange Management Shell, run the following command to export the list of existing and non-existing folders so that these can be mapped to the Exchange 2013 Server.

Get-PublicFolder -Recurse | Export-CliXML C:\Scripts\structure.xml

  • This will be used during migration and for comparison post-migration.

Step 3: Verify Migration Lock State

  • Now you need to check and make sure that the public folders are not locked or in a migration by using the below command.

Get-OrganizationConfig | Format-List PublicFoldersLockedforMigration, PublicFolderMigrationComplete

  • If the command shows any as ‘True’, you need to use the same command but with the Set-OrganizationConfig to set them as False (as given below).

Set-OrganizationConfig -PublicFoldersLockedforMigration $false -PublicFolderMigrationComplete $false

This will confirm the public folders and their state on the Source Exchange Server.

Step 4: Prepare the Destination Server

You need to perform the similar process. Before proceeding, you need to make sure that there are no migrations in progress as this would create an issue.

  • The below command will show if there are any pending public folder migration requests.

Get-PublicFolderMigrationRequest | Get-PublicFolderMigrationRequestStatistics -IncludeReport | Format-List

  • If there are any, the below command will remove any pending requests.

Get-PublicFolderMigrationRequest | Remove-PublicFolderMigrationRequest

Step 5: Export Folder Statistics

To start the migration, you need to export the folder statistics from your Exchange  Server using the Export-PublicFolderStatistics.ps1, which will generate the CSV file.

Step 6: Generate Mailbox Mapping

Run the script PublicFolderToMailboxMapGenerator.ps1 using the exported CSV.

The MailboxSize (in bytes) is the maximum size you want to set for the new public folders on destination Exchange Server.

Step 7: Create Destination Public Folder Mailboxes

The Create-PublicFolderMailboxesForMigration.ps1 will create the destination public folders on the Exchange Server, according to the files exported from the Source Exchange Server.

Step 8: Create and Start Migration Batch

  • To start the migration process, you need to create the migration batch by using the following command:

New-MigrationBatch -Name <Name of migration> -SourcePublicFolderDatabase (Get-PublicFolderDatabase -Server <DestinationServer>) -CSVData (Get-Content <MapGeneratedFile> -Encoding Byte)

  • Once this is created, you can start the migration by using the command below:

Start-MigrationBatch <Name of migration batch>

Step 9: Finalize Migration

Once the migration is complete and the public folders are marked as ‘Synced’ in the migration section in the Destination Exchange Server Admin Center, you can lock the public folders on your Source Exchange server by using the below commands. This is to make sure that no changes are done by the users.

Set-OrganizationConfig -PublicFoldersLockedForMigration:$true
Set-OrganizationConfig -PublicFolderMigrationComplete:$true

The final step in the migration process is to run the below command on the Destination Exchange Server.

Set-OrganizationConfig -PublicFoldersEnabled Remote

Faster Alternative: Stellar Migrator for Exchange

While the native method works, it’s script-heavy, time-consuming, and requires clean server states at both ends. Stellar Migrator for Exchange simplifies public folder migration with:

-No scripting
-Automated mailbox/public folder mapping
-Direct migration from Exchange to Exchange or Exchange to Office 365
-Zero-downtime during transition
-Preview, selective migration, and faster throughput

Conclusion

Migrating public folders natively from one Exchange server to another involves many steps, dependencies, and potential pitfalls—especially when dealing with large folder structures or missing data. If you’re looking for a faster, more reliable, and admin-friendly solution, consider using Stellar Migrator for Exchange. It drastically reduces complexity while ensuring data integrity and continuity.

Also Read: Vacation Policies and Employee Satisfaction

Previous

How to Migrate Public Folders from one Exchange Server to another?

Related posts

Leave a Reply

Required fields are marked *