Problem: Customer cannot locate items within a public folder mailbox
Public folders are designed for shared access. They provide an easy and effective way to collect, organize, and share information with other people in a work group or organization.
However, an "incorrect" reading of public folder mailboxes can leave customers unable to find items in the expected place within a public folder.
This article offers instructions on how to correctly locate public folder content for recovery.
Public Folder Mailbox Mechanics
There are two types of public folder mailboxes: The primary hierarchy mailbox and secondary hierarchy mailboxes.
- Primary hierarchy mailbox: The primary hierarchy mailbox is the one writable copy of the public folder hierarchy. The public folder hierarchy is copied to all other public folder mailboxes, but these copies will be read-only.
- Secondary hierarchy mailboxes: Secondary hierarchy mailboxes contain public folder content as well and a read-only copy of the public folder hierarchy.
Recovering Public Folder Data
When using Axcient DirectRestore to recover public folder information, it is important to know that:
- the structure of public folders is present within all of your Microsoft Exchange Message Stores
- the contents of the public folders is only present within the specific Message Store containing the relevant Public Folder Mailbox.
When you open a Message Store that does not contain the relevant mailbox, you will be presented with only an empty folder structure, with none of the actual data content present. If no public folder mailbox exists within the selected Exchange Message Store, no public folder structure will be displayed at all.
Use Exchange PowerShell cmdlets to get info about public folder structure
Get list of all Public Folder mailboxes. (Check if all Public Folder mailboxes are read by product):
Get-Mailbox -PublicFolder | fl name, alias, database, servername
Get item count for Public Folder mailbox (check if all items from mailbox are read by product):
Get-MailboxStatistics -identity <identity>
Get item count for Public Folder (returns count of items in every public folder, and may be used to find mailbox in which items are stored in fact):
Get-PublicFolder "\" -Recurse | Get-PublicFolderStatistics | Select FolderPath, ItemCount, Identity | fl
So we can see that item from folder Main Public Folder/Custom sub-folder #2 is located in Secondary hierarchy mailbox #2.
To recover Public Folder content, open the correct Exchange Message Store and select the Public Folder Mailbox containing the data you are looking for.
If the content that you are trying to recover has been deleted from the live Exchange system and you cannot determine which mailbox your data resides within, it may be necessary to open each Microsoft Exchange Message Store in turn and examine all Public Folder Mailboxes until you are able to locate the data you wish to restore.
Distributed Public Folders
During public folder mailbox creation, you can specify the database to be used for storage:
New-Mailbox -PublicFolder -Name <name> -Database <database>
During public folder creation, the mailbox and path of the new folder can be specified, e.g. to create a new folder inside of an existing public folder tree:
New-PublicFolder -Name <name> -Mailbox <mailbox> -Path <path in \>
Existing public folder contents can also be moved between public folder mailboxes:
New-PublicFolderMoveRequest -Folders <path in \> -TargetMailbox <mailbox>
Using these commands, a public folder tree can be created where items are stored in multiple mailboxes and in multiple databases but, from user the perspective, all of them are located in one root public folder.
Let's check Main Public Folder:
Main Public Folder is located in the Primary hierarchy mailbox, but all subfolders are stored in different mailboxes.
Because DirectRestore uses mailboxes as the structure for displaying database content, in this case the customer may be confused as to where their data is located when trying to perform recovery.
In the current release, the right answer is "in the appropriate mailbox".
To perform recovery on the contents of Public Folders, use the example powershell commands shown above to identify the Public Folder mailbox(s) and database(s) where the content is stored and then use DirectRestore to access the appropriate mailbox content for recovery.