Summary: The error UnableToReadPSTFolder appears when a user attempts to export PST by using the New-MailboxExportRequest cmdlet in Exchange Management Shell. It occurs when the PST export process fails due to inadequate permissions, mailbox size, bad items, corruption, or any other reason. In this guide, we have discussed the UnableToReadPSTFolder error in detail and also addressed a few workaround steps to export PST from an online or offline Exchange mailbox database.
There could be many reasons to export the PST file from a mailbox on the Exchange server. An Exchange administrator may export mailbox to PST for backup or migration of the mailbox from one server to another. Besides, it’s the only granular backup option available in the MS Exchange server.
One may also require to export mailbox to PST for email investigation or to reduce the mailbox size by moving the mailbox items in an Outlook importable PST format. In Exchange, admins can export mailbox to PST by using Exchange Admin Center (EAC) or New-MailboxExportRequest cmdlet in Exchange Management Shell (EMS).
By using these options, admins can export mailboxes (large or small) from Exchange database file (EDB) to Outlook importable PST file. However, sometimes the PST export process may fail and return an error such as UnableToReadPSTFolder. In such cases, you can follow the workarounds discussed in this post to fix the error and export PST.
NOTE: You can also use an EDB to PST converter software, such as Stellar Converter for EDB, to export mailboxes from Exchange EDB to PST in a few clicks. The software helps avoid all kinds of mailbox export errors or data loss and also recovers deleted mailboxes.
About UnableToReadPSTFolder Error
When you create a PST export request for a specified mailbox by using the New-MailboxExportRequest, the command may fail after a while and display the following problem,
FailureCode : -2146233088
FailureType : UnableToReadPSTFolderPermanentException
FailureSide : Target
Message : Error: Unable to read folder ID ‘33154’. Check the PST file for possible
corruption. –> Heap id type does not match
If you check the log, the end of the log file may look like this:
xx/xx/201x 12:13:04 PM [SERVER] Fatal error
UnableToReadPSTFolderPermanentException has occurred.
How to Prevent Error UnableToReadPSTFolder?
When New-MailboxExportRequest failed to respond or export the PST, then it is usually presumed that the user may have missed out on the complete request or error occurred due to a typo. But even after creating the same mailbox export request several times, if the user gets the same error, then there is an issue with PowerShell command. It could occur due to the following reasons,
- Mailbox size is quite large, let’s say 90 GB, and hence Mailbox Request is unable to export mailbox to PST
- Mailbox Import Export RBAC management role is not assigned to the user account. If the RBAC Management role is not assigned, then you can’t create a mailbox export request
Also, before reaching to any conclusion, verify the following:
- View Detailed Statistics Report
Check the export request status to find out what caused the problem.
- Try to export mailbox to another folder
If the Exchange user can export mailbox to PST in another folder, then the problem is with the current mailbox permissions.
- Check if the mailbox is broken
Try exporting another large mailbox to the same folder. If it works, then the issue is with that particular mailbox. In that case, verify if the mailbox is broken or it is too large, say more than 50 GB (maximum size limit of PST file).
In most cases, there is an issue of oversized mailbox. You may resolve such issue by splitting the PST file by using the following PowerShell command.
New-MailboxExportRequest -Mailbox XYX -ContentFilter {(Received -ge “01/01/2017″) -and (Received -lt “01/01/2018”)} -FilePath “\\SERVER21\PSTFileShare\XYZ.pst”
You can change the comparators in PowerShell command with any of the following to split the PST file accordingly,
-eq | equal to |
-ne | not equal |
-gt | greater than |
-ge | Greater than or equal to |
-lt | less than |
-le | less than or equal to |
In case this doesn’t work, follow the steps discussed below to export mailbox to PST from Exchange database and avoid the UnableToReadPSTFolder error.
Step 1: Assign Permissions and Mailbox Import Export Role
By default, the Mailbox Import Export role is not even assigned to administrators’ accounts. Thus, before executing the New-MailboxExportRequest cmdlet, you must assign the required role to the user account. For this, use the following command,
New-ManagementRoleAssignment –Role "Mailbox Import Export" –User "user name"
Step 2: Use New-MailboxExportRequest Cmdlet with Additional Parameters
If the export still fails and an error UnableToReadPSTFolder is displayed, you can execute the New-MailboxExportRequest cmdlet with some additional parameters to add an exception. This can help you avoid the error, if it occurs due to bad items in the mailbox.
Try the following modified cmdlet to export PST in Exchange,
New-MailboxExportRequest -Mailbox mailboxname -FilePath \\server\d$\Backup\mailbox.pst -BadItemLimit 200 -AcceptLargeDataLoss
The above command will try to export a PST file from the selected mailbox with an exception. The command will skip up to 200 bad items. It will export the PST even if the data loss occurs. You can increase or decrease the bad items limit. To know more about New-ExportMailboxRequest cmdlet, read How to use New-MailboxExportRequest Cmdlet.
Step 3: Export Mailbox from Exchange EDB to PST with Stellar Converter for EDB
Stellar Converter for EDB is an Exchange database, i.e. EDB to PST converter software. By using this software, you can convert desired mailboxes from Exchange database to PST file, irrespective of the mailbox size.
Follow the steps below to convert Exchange mailbox into PST file,
- Install and run Stellar Converter for EDB software
- Select Hosted Exchange or Offline EDB file option based on where the specific mailbox is located
- Select the EDB file and convert
- After conversion, you can preview the content of EDB file and view mailbox items before export
- Then select the mailbox you want to export to PST
- Click on Save and from the options, choose ‘Export to PST’
- Click ‘Next’ and choose a location where you want to save the PST file
- Click ‘OK’
You can also convert EDB mailboxes to other file formats such as MSG, EML, RTF, etc. If required, you can save the converted mailbox directly to the Live Exchange server or Office 365.
Why Use Software to Resolve the UnableToReadPSTFolder Error?
Stellar Converter for EDB proficiently converts offline as well as online EDB (Exchange Database) files. The software successfully converts deleted and archived mailboxes to PST file and saves all components with 100% integrity. The file-preview option lets users verify the mail components before saving the file. The software also facilitates selective conversion.
Conclusion
Exchange Admins understand the importance of keeping the Exchange up and running at all times. However, due to oversized mailboxes, the services may be hampered and rendered unavailable. In such cases, there are only one option remains, which is to export the mailboxes from the Exchange database to PST by using PowerShell command or with specialized software like Stellar Converter for EDB.
The Software converts Unicode EDB files available in multiple languages and makes sure that Exchange services are not hampered for a long time when the server gets affected due to “MailboxExportRequest Fails/ UnableToReadPSTFolderPermanentException” errors.