Exchange Management Shell connects but returns inconsistent results across servers

Sebastian Garcia 20 Reputation points
2026-01-07T13:00:48.06+00:00

In a multi-server Exchange Server environment, running the same cmdlet in Exchange Management Shell (for example Get-MailboxDatabase or Get-ReceiveConnector) returns different or incomplete results depending on which Exchange server the shell is launched from. There are no visible errors, RBAC roles appear correct, and Active Directory replication is healthy.

What could cause EMS to return inconsistent data

Exchange | Exchange Server | Management
Exchange | Exchange Server | Management
The administration and maintenance of Microsoft Exchange Server to ensure secure, reliable, and efficient email and collaboration services across an organization.
0 comments No comments
{count} votes

Answer accepted by question author
  1. Steven-N 17,720 Reputation points Microsoft External Staff Moderator
    2026-01-07T14:05:58.6466667+00:00

    Hi Sebastian Garcia

    Thank you for reaching out to Microsoft Q&A

    In a multi-server Exchange Server environment, inconsistent or incomplete results from the same Exchange Management Shell (EMS) cmdlet, such as Get-MailboxDatabase or Get-ReceiveConnector, are typically caused by differences in how each server accesses Active Directory.

    That said, even with healthy replication and correct RBAC roles, each Exchange server may query a different domain controller or global catalog, leading to temporary discrepancies in configuration visibility.

    From my research, you can begin by verifying which domain controller each Exchange server is using during EMS sessions. You can do this by running Get-ADServerSettings on each server and checking the PreferredServer and ViewEntireForest settings. If discrepancies are found, temporarily unify the domain controller across sessions using Set-ADServerSettings -PreferredServer <DCName> and ensure ViewEntireForest is set to $true to avoid scope limitations.

    Next, confirm that all Exchange servers are running the same Cumulative Update (CU) and Security Update (SU) levels. Version mismatches can lead to cmdlet behavior differences or serialization issues, especially when running EMS remotely. For best results, please remember to execute EMS commands directly on a mailbox-role Exchange server with elevated permissions.

    As far as I know, these steps will help ensure consistent EMS output across servers and eliminate common causes such as replication lag, session scope filtering, or outdated server configurations.

    Link references:

    https://learn.microsoft.com/en-us/powershell/module/exchangepowershell/set-adserversettings?view=exchange-ps

    https://learn.microsoft.com/en-us/powershell/module/exchangepowershell/?view=exchange-ps

    You can try the above approach, if the problem still persists, kindly let me know in the comments for further support.

    Hope my answer will help you


    If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".     

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.