Checkyourlogs fans, I am going to show you how to migrate public folder from exchange 2010 to 2016 step by step.
There is no more legacy public folder database, public folder mailboxes also known as modern public folders, if you still need public folders, migrate them to Exchange 2016. Public folder migration is a one-way process, if something goes wrong, you can roll back but any changes made since the migration will be lost.
- Login Exchange 2010 Server.
- Download all scripts and supporting files from following link and save to c:\post-install\pfscripts.
https://www.microsoft.com/en-us/download/details.aspx?id=38407
3. Open Exchange Management Shell.
4. Run the following command to take a snapshot of the original source public folder structure.
Get-PublicFolder -Recurse | Export-CliXML C:\Post-Install\PFMigration\Legacy_PFStructure.xml
5. Run the following command to take a snapshot of public folder statistics such as item count, size, and owner.
Get-PublicFolderStatistics | Export-CliXML C:\Post-Install\PFMigration\Legacy_PFStatistics.xml
6. Run the following command to take a snapshot of the permissions.
Get-PublicFolder -Recurse | Get-PublicFolderClientPermission | Select-Object Identity,User -ExpandProperty AccessRights | Export-CliXML C:\Post-Install\PFMigration\Legacy_PFPerms.xml
7. If the name of a public folder contains a backslash \, the public folders will be created in the parent public folder when migration occurs. Before you migrate, we recommend that you rename any public folders that have a backslash in the name. Run the following command to locate public folders that have a backslash in the name.
Get-PublicFolderStatistics -ResultSize Unlimited | Where {$_.Name -like "*\*"} | Format-List Name, Identity
8. If any public folders are returned, you can rename them by running the following command.
Set-PublicFolder -Identity <public folder identity> -Name <new public folder name>
9. To make sure there isn’t a previous record of a successful migration, run following cmdlet to check the public folder migration status.
Get-OrganizationConfig | Format-List PublicFoldersLockedforMigration, PublicFolderMigrationComplete
10. If the status of the PublicFoldersLockedforMigration or PublicFolderMigrationComplete properties is $true, run the following command to set the value to $false.
Set-OrganizationConfig -PublicFoldersLockedforMigration:$false -PublicFolderMigrationComplete:$false
11. Login to Exchange 2016 server.
12. Open Exchange Management Shell.
13. Run the following command to discover any existing serial migration requests.
Get-PublicFolderMigrationRequest | Get-PublicFolderMigrationRequestStatistics -IncludeReport | Format-List
14. If you found existing serial migration requests, run following command to removes any existing public folder serial migration requests.
Get-PublicFolderMigrationRequest | Remove-PublicFolderMigrationRequest
15. Run the following command to discover any existing batch migration requests.
Get-MigrationBatch | where {$_.MigrationType.ToString() -eq "PublicFolder"}
16. If you found existing batch migration requests, run following command to removes any existing batch migration requests.
$batch = Get-MigrationBatch | where {$_.MigrationType.ToString() -eq "PublicFolder"} $batch | Remove-MigrationBatch -Confirm:$false </strong>
17. Run the following command to make sure no public folder mailboxes exist on the exchange 2016 server.
Get-Mailbox -PublicFolder
18. If the command returned any public folders, run the following command to see if any public folders exist.
Get-PublicFolder
19. If you have any public folders, run the following commands to remove them. Make sure you’ve saved any information that was in the public folders.
Get-Mailbox -PublicFolder | Where{$_.IsRootPublicFolderMailbox -eq $false} | Remove-Mailbox -PublicFolder -Force -Confirm:$false Get-Mailbox -PublicFolder | Remove-Mailbox -PublicFolder -Force -Confirm:$false
Steps are not completing!!, stay tuned, to be continue……
Hope you enjoy this post.
Cary Sun
Twitter: @SifuSun
Hi,
I am planning migrate from Exchange 2010 SP3 RU29 to Exchange 2016. I dont have any user / admin created Public Folders. The way I checked this is MMC-> Add/Remove Snap-in-> Select “Public Folder Management Console Snap-in”, Click on Add -> Right Click on the Public folders Icon in the MMC and Click on Connect to Server ->
I have no content / list in the “Default Public Folders”
The “System Public Folders” has listing of : “EFORMS REGISTRY” , “OFFLINE ADDRESS BOOK” and “SCHEDULE+ FREE BUSY”
Should these be migrated OR not?