Exchange 2016 to 2019 Migration Guide for Admins – Step-by-Step Process
Organizations that operate an Exchange Server 2016 environment want to continue with an on-premises email server. To do this, they must perform an Exchange 2016 to 2019 migration ASAP. This is because only those servers that are on the latest CU 15 version of Exchange 2019 can transition into the upcoming Exchange Server SE edition. Moreover, the recent Exchange Online outage and privacy concerns with keeping critical company data on the cloud encourage many companies to continue with the on-premises systems.
That is why, in this guide, I give you an in-depth understanding of how to undertake the upgrade safely and step-by-step. Additionally, the tutorial is made in such a language that admins, regardless of prior experience or technical know-how, can move data across the versions with minimal downtime and zero loss. So, without further ado, let us start with the prerequisites.
Questions to Ask Before Exchange 2016 to 2019 Migration
Q1. Does your organization use a disjoint namespace (eg, domain.com and sub.domain.com) where your primary DNS suffix is different from the domains’ computer objects use in the local Active Directory?
This scenario is common that occurs after an M&A activity. Where your organization gets acquired by another business, or is acquired by another company, or merged with another organization.
There could be security constraints that force you to keep the Active Directory administration and the Network administration team separate. Here, too, you would use a disjoint namespace.
Q2. Is your current Exchange 2016 Server using the Unified Messaging Feature?
Exchange 2019 no longer supports UM for voicemails. If you want to retain this ability, you must use third-party voicemail solutions. Take extra care when you perform the deployment. Otherwise, there is a risk that your mailboxes cease to function and you get flooded with hundreds of user complaints.
Q3. Are you planning to make new public mailboxes and/or migrate existing Public mailboxes?
If you want to retain all the data on your previous system, i.e., the Exchange 2016 server, you must migrate all the public folders as well.
Q4. Do you need an Edge Transport Server role?
This service sits outside of your main AD environment and handles internet-facing mail flow, plus SMTP relay (along with smart hosts).
Organizations use it to reduce their exposed attack surface and enhance security. There can be 3 scenarios:
- You want it on the new version, and already have an ETS from the previous edition
- You want it on the Exchange 2019 server, but don’t have it on the 2016 deployment.
- You don’t want the Edge Transport Server (this may be to reduce the deployment complexity)
Overview of Exchange 2016 to 2019 Migration from Start to End
To ensure an error-free migration, you need to follow a detailed and step-by-step approach. Follow the below-listed different stages accordingly:
Pre-Migration Steps
- Update your Exchange 2016 server to the latest CU23 edition.
- Go through the latest release notes to conduct an error-free upgrade to the 2019 version.
- Study the system requirements and make all necessary changes to the hardware and supporting software (AD, Email Clients, etc.).
- Use Windows Server 2012 R2 or later. Upgrade to the latest version (ideally, it should be Windows 2019 or 2022).
- Add the necessary permissions and privileges to the admin accounts responsible for the migration. (Tip: Use RBAC), But remember, Edge Transport does not use role-based access control. Instead, the account must be part of the local administrators group.
- Collect information about your to-be-installed Exchange 2019 server.
DNS Configuration
- Configure the disjoint namespace.
- Add the Default Offline Address Book.
- Build an Edge Transport DNS suffix.
Role Installation
- Install the Mailbox server role.
- Install the Edge Transport server role.
- Install Office Online Server.
Exchange Server Configuration
- Create an Exchange administrator mailbox.
- Create a public folder mailbox.
Set up Client Access
- Configure external URLs.
- Configure internal URLs.
- Configure Exchange Server certificates.
Additional Installation Tasks During Exchange 2016 to 2019 Migration
- Move arbitration mailboxes.
- Subscribe to the Edge Transport server.
- Remove legacy Edge subscriptions.
- Configure the service connection point.
- Configure DNS records.
Finalize Migration from Exchange Server 2016 to Exchange Server 2019
- Move user mailboxes.
- Move existing public folder mailboxes.
Options to Migrate Exchange 2016 to Exchange 2019
Mailbox Migration Strategies: Whichever way you choose, don’t try to move everyone at once! Start with a pilot group. The following migration options are available:
Method 1. Migrate Exchange 2016 to Exchange 2019 Via EAC:
The Exchange Admin Centre offers a graphical way to create migration batches and move mailboxes from the 2016 version to a different database on the 2019 server. The process, when done via EAC, looks something like this:
- Step 1. Log in to EAC, go to Recipients > Migration
- Step 2. Click on the + icon > Select Move to a different database.
- Step 3. Pick mailboxes > Specify target db.
- Step 4. Configure move settings > Migrate.
Method 2. Using PowerShell to Migrate Exchange 2016 to Exchange 2019
The New-MoveRequest command is your workhorse.
Example:
Get-Mailbox -Database "OldDB" | New-MoveRequest -TargetDatabase "NewDB2019" -BatchName "PilotBatch".
Monitor with:
Get-MoveRequestStatistics.
Method 3. Move User Mailboxes Along with Data Using the SysTools Exchange to Exchange Migration Tool
Although the native EAC and PowerShell methods are available and technically free, they carry inherent risks of migration failures, lost mailboxes, data corruption, and more. The error resolution itself is quite time-consuming, increasing the overall timeline of the integration significantly. That’s why it’s better to choose an automated solution with a built-in retry failure option and the following features.
Software Features:
- Simple GUI design that matches the configurability of PowerShell.
- Keeps record of all data items and generates post-migration reports for admins.
- Eliminates the risk of human error disrupting the migration.
- Can safely upgrade deprecated server editions to the currently active versions, like Exchange 2013 to 2016 or 2019 migration.
Steps to Perform Exchange 2016 to Exchange 2019 Migration Using the Software
Step 1. Launch the tool on your system, and on the setup screen, choose Exchange Server as both the source and the destination.
Step 2. On the setup screen, mark the check box next to the workloads you wish to transfer and apply a date filter. Then press Next.
Step 3. In the source screen, you put the Exchange Details, i.e., admin ID, password, and IP addresses of both the server and the AD. Plus, you can include the subdomains for this Exchange 2016 to 2019 Migration. Validate and, when successful, press Next.
Step 4. Likewise, do a similar admin + server credential validation for the destination, and once done, press Next.
Step 5. The user mapping screen has three options: Fetch users directly, Import a premade CSV, or Download, edit a template, and upload it. Choose the one that is best for you.
Step 6. Once the user list appears inside the tool, mark the check box next to the user names, prioritize a few critical accounts, validate, and begin migration.
Post-Migration Tasks and Verification
- Add the product key before your trial expires (you have almost 4 months or 120 days).
- Revoke all permissions that are no longer needed.
- Configure high availability and site resilience for mailboxes (you need to have more than two Mailbox servers).
- Make updates to both internal and external DNS records ( including Autodiscover, OWA, and MX) so that they now point to Exchange 2019 instead of Exchange 2016.
- Lower TTL values beforehand for quicker propagation, this gives the admin the option to conduct a rollback if a need arises
- Test Outlook (desktop & mobile) and OWA connectivity and functionality.
- Ask users to send test emails internally and externally.
- Continuous performance monitoring should be done for a few weeks post-migration to see if the 2019 servers’ performance is on par.
- Now, point the SCP on Exchange 2019 servers to themselves so new clients automatically connect there.
- Revoke the Exchange Server 2016 in the same way we decommissioned Exchange Server 2013.
- Continue to manage and maintain Exchange 2019 until its End of Life (EOL) in October of 2025.
Official Guidelines for Upgrading Exchange 2016 to 2019 As Per Microsoft Webinar
Here are some highlights that I believe would be helpful for any admins looking to switch over from Exchange 2016 to 2019.
- It is recommended that you follow the Exchange Server Deployment Assistant and use the Exchange Sizing Calculator to figure out what will be the best route for your environment.
- The Disk Space you are adding should cover not only all the primary data but also secondary server-generated data, like the “mail.que” file.
- Plus, when you add the IIS URL Rewrite Module, you should download and install this manually instead of the Web Platform. The Web installer is notorious for adding unwanted software to your server.
- While adding certificates, make sure you use the CAPI1 certificate, as EdgeSync does not support newer CNG certificates.
- During the Q/A session of the online discussion, a user pointed out that the default 128 GB RAM requirement seemed overkill for a small user environment (50-100 members). Followed by a question asking if 16 GB would be enough.
- To which the presenter replied that 16 GB is too little and will cause the server to crash the moment usage increases. The consensus came out that a 32-64 GB RAM machine will be the best way to balance both cost and functionality.
- Use the official HealthChecker.ps1 PowerShell script to check if all systems are functional or not.
Conclusion
So now you know how an Exchange 2016 to 2019 migration is done. Here, I have shown you that there are, in fact, two different methods through which the upgrade can be done. One is a manual method, which is error-prone and slow. The tool, on the other hand, transforms the complex process into an easy step-by-step process. So, using it is in the best interest of any organization that wants its on-premises system ready for the SE edition.