How to Convert EDB to PST without Losing Emails
Let me set the scene. You get a request, someone needs emails from a mailbox that no longer exists on the active server. Or the team is mid-migration and needs data out of Exchange before the cutover. The file in front of you is an EDB. The question is always the same: how do I get this into something I can actually open?
The answer is converting to PST. A PST file is what Outlook uses locally, no Exchange required, no server dependency, just a self-contained file you can import anywhere. Getting there cleanly depends entirely on which method you use and whether your Exchange environment is currently healthy.
This guide covers three approaches. I will be honest about what each one can and cannot do, because hitting a wall halfway through an export is genuinely frustrating. Pick the method that fits your situation, follow the steps, and you will have your data intact on the other side.
Why Convert EDB to PST?
This task comes up in real Exchange administration more often than people expect. Common reasons:
- Exporting to a new server or Microsoft 365: PST exports are often the cleanest bridge when a direct path is not available or too risky.
- Archiving former employee mailboxes: When staff leave, their mailbox data cannot simply disappear. PST gives you a portable archive that does not require a live license.
- Offline access for users: Some people need full email history in Outlook without a server connection. PST solves that with zero complexity.
- eDiscovery and legal requests: Legal teams regularly need mailbox data packaged for review. PST is still the format they expect.
- Decommissioning old hardware: Shutting down a legacy server means making sure nothing gets left behind. PST exports cover that.
Prerequisites for EDB to PST Conversion
Two things need to be in place before any of these methods will work. Skipping these steps is the most common source of errors.
1. Assign the Mailbox Import/Export Role
This is the one that catches people most often. Even full Exchange administrators do not have the Mailbox Import/Export role by default. Microsoft leaves it unassigned intentionally — it is a sensitive permission.
To assign it, open the Exchange Management Shell and run:
New-ManagementRoleAssignment -Role "Mailbox Import Export" -User "<YourAdminUsername>"
After running that, close your current shell session and open a fresh one. The role will not apply to an existing session. This small step gets missed constantly.
2. Create a UNC Shared Folder
Exchange will not export PST files to a local path. It needs a UNC network share. Here is the quick setup:
- Create a folder on your server or a network location.
- Right-click it, choose Give access to, then Specific People.
- Add your admin account or Exchange Trusted Subsystem with Read/Write access.
- Copy the resulting UNC path — you will need it in the steps below.
3. Confirm the Database Is Mounted
Methods 1 and 2 both require Exchange to be running and the database to be online. If you are working with an offline database, or an EDB from a decommissioned server, go straight to Method 3.
Method 1: Convert EDB to PST Using Exchange Admin Center (EAC)
If clicking through a wizard is more your style than typing commands, the Exchange Admin Center has a built-in export option. It handles the basics without requiring any shell knowledge. Not the fastest route, but it works well for simple one-off exports.
Step-by-Step Instructions
- Log into the Exchange Admin Center in a browser using your administrator credentials.
- In the left sidebar, go to Recipients and click Mailboxes.
- Click the More options button in the toolbar — the three-dot icon.
- Select Export to a PST file from the dropdown menu.
- Pick the mailbox you want to export. Choose primary mailbox, archive, or both. Click Next.
- Enter the full UNC path and give the file a name. Click Next.
- Select an account to receive an email notification when the export finishes.
- Click Finish. The job is now running in the background.
|
Note: No progress bar here Once you click Finish the export runs silently. No status display. You get an email when it is done. To check manually, open the Exchange Management Shell and run: Get-MailboxExportRequest |
Method 2: Convert EDB to PST Using Exchange Management Shell (PowerShell)
The shell is where the real flexibility lives. The New-MailboxExportRequest cmdlet lets you filter by folder, date, and item type. Once you know a few of these commands, this becomes faster than clicking through the EAC for most scenarios.
Export a Full Mailbox
The simplest version — export everything from one mailbox into a PST:
New-MailboxExportRequest -Mailbox JohnDoe -FilePath \exsrvd$pstJohnDoe.pst
Export One Folder Only
To limit the export to just the Inbox:
New-MailboxExportRequest -Mailbox JohnDoe -FilePath \exsrvd$pstJohnDoe.pst -IncludeFolders "#Inbox#"
Exclude a Folder
To skip Deleted Items and avoid exporting unnecessary clutter:
New-MailboxExportRequest -Mailbox JohnDoe -FilePath \exsrvd$pstJohnDoe.pst -ExcludeFolders "#DeletedItems#"
Filter by Date Range
Useful for compliance exports. To pull only emails received after January 1, 2022:
New-MailboxExportRequest -ContentFilter {(Received -gt '01/01/2022')} -Mailbox JohnDoe -FilePath \exsrvd$pstJohnDoe.pst
To narrow it down to one specific year:
New-MailboxExportRequest -ContentFilter {(Received -gt '01/01/2022') -and (Received -lt '01/01/2023')} -IncludeFolders "#Inbox#" -Mailbox JohnDoe -FilePath \exsrvd$pstJohnDoe_2022.pst
Check Job Status
To see all currently running or queued export requests:
Get-MailboxExportRequest
Remove Completed Jobs
Finished jobs linger until you manually clear them. Once everything has exported successfully:
Get-MailboxExportRequest | where {$_.status -eq "Completed"} | Remove-MailboxExportRequest
Limitations of Manual EDB to PST Conversion Methods
To be honest with you — both built-in methods work well when Exchange is healthy and the database is online. Outside that, they hit hard walls:
The Limitation |
What It Means in Practice |
|---|---|
Exchange must be running |
If the server is down or the database is dismounted, neither method works. You need a live Exchange environment to use these tools. |
No offline EDB support |
Have an EDB file from a server already shut down? These tools cannot read it. The database must be actively mounted. |
Public folders are skipped |
Built-in export tools ignore public folders completely. If your org uses them, you need a different approach. |
Role assignment is manual |
Forgetting the Mailbox Import/Export role is the single most common reason exports fail. It is not assigned by default. |
No live progress in the EAC |
After clicking Finish, the job runs silently. No progress bar. You wait for an email notification, which feels risky on large mailboxes. |
Local paths are blocked |
You cannot write PST files to a local drive. A UNC network share is always required, adding extra setup steps. |
PowerShell has a learning curve |
The cmdlets are not hard once you know them, but if you are new to Exchange shell management the syntax takes getting used to. |
If your situation matches any row in that table, do not try to force the manual tools to cooperate. They will not. Method 3 is built precisely for those harder cases.
Method 3: Convert EDB to PST Using Stellar Converter for EDB
This is the EDB to PST Converter I reach for when things are not straightforward. Offline database, a server that was decommissioned years ago, public folders — Stellar Converter for EDB handles all of it without needing Exchange running at all. It works directly off the EDB file.
The interface is graphical. The workflow is intuitive. But the preview feature is what I find most valuable — before committing to any export, you can browse the full mailbox tree and see exactly what is there. That removes a lot of guesswork when working with old or unfamiliar databases.
What Makes It Worth Using
- Works without a live Exchange Server: The biggest differentiator. Offline, , decommissioned — if you have the EDB file, the tool can work with it.
- Preview before you export: Browse folders, emails, attachments, and contacts before exporting anything. What you see is exactly what you get.
- Multiple output formats: PST is the primary option, but you can also export to EML, MSG, PDF, RTF, or HTML.
- Public folders included: Unlike the built-in tools, it handles public folder data without any workarounds.
- Direct export to Microsoft 365: Skip the PST step entirely and export mailboxes straight to a live Office 365 tenant.
- Covers all Exchange versions: Exchange 5.5 through Exchange 2019 and Exchange Server SE.
Step-by-Step Process
- Download and install Stellar Converter for EDB on any Windows machine.
- Open the app, click Browse to locate your EDB file, then click Convert to scan it.
- The tool loads all mailboxes it finds and shows them in a folder tree. Click any mailbox to preview its contents.
- Select the mailboxes or folders you want by ticking the boxes next to them.
- Click Save and choose PST as the output format.
- Pick a destination folder and click OK to begin the export.
- When finished, import the PST into Outlook via File, Open and Export, then Import/Export.
|
Tip: Try the demo version first. The free demo lets you preview all mailbox data before purchasing anything. If you are not sure whether the tool will handle your specific EDB file, download the demo and check. Five minutes of testing can save you a lot of time and uncertainty. |
Conclusion
There is no single best method here. It depends entirely on what you are working with.
Use the Exchange Admin Center for simple, occasional exports when your server is healthy and a GUI suits you better than a shell. Switch to PowerShell when you need bulk exports, date filters, or folder-level control. And reach for Stellar Converter for EDB when the built-in tools run into a wall — offline databases, , decommissioned servers, or anything involving public folders.
One thing applies no matter which method you choose: back up the EDB file before you start. Nothing here should modify the original database, but having a copy means you can retry without stress if something unexpected comes up.
Hope this helped. If you ran into a scenario that none of these methods covered quite right, drop it in the comments. Happy to help work through it.