skip to Main Content

Restart Exchange Server services through PowerShell

Sometimes you need to restart the Exchange Server services. You have the option to restart the Exchange Server. Restarting will take more time and effort then restarting the Exchange services. It’s possible to restart the services through services.msc. It’s not as fast as restarting the services through PowerShell. In this article, you will learn how to restart Exchange Server services through PowerShell.

Get a list of Exchange services

Run Exchange Management Shell as administrator. Let’s first get a list of all the Exchange services on the server. This can be running and stopped services. We are going to use the Get-Service cmdlet.

[PS] C:\>Get-Service | Where {$_.DisplayName -Like "*Exchange*"} | Where {$_.DisplayName -NotLike "*Hyper-V*"} | Format-Table DisplayName, Name, Status

DisplayName                                                   Name                           Status
-----------                                                   ----                           ------
Microsoft Exchange Search Host Controller                     HostControllerService         Running
Microsoft Exchange Compliance Audit                           MSComplianceAudit             Running
Microsoft Exchange Active Directory Topology                  MSExchangeADTopology          Running
Microsoft Exchange Anti-spam Update                           MSExchangeAntispamUpdate      Running
Microsoft Exchange Compliance Service                         MSExchangeCompliance          Running
Microsoft Exchange DAG Management                             MSExchangeDagMgmt             Running
Microsoft Exchange Mailbox Transport Delivery                 MSExchangeDelivery            Running
Microsoft Exchange Diagnostics                                MSExchangeDiagnostics         Running
Microsoft Exchange EdgeSync                                   MSExchangeEdgeSync            Running
Microsoft Exchange Search                                     MSExchangeFastSearch          Running
Microsoft Exchange Frontend Transport                         MSExchangeFrontEndTransport   Running
Microsoft Exchange Health Manager                             MSExchangeHM                  Running
Microsoft Exchange Health Manager Recovery                    MSExchangeHMRecovery          Running
Microsoft Exchange IMAP4                                      MSExchangeImap4               Stopped
Microsoft Exchange IMAP4 Backend                              MSExchangeIMAP4BE             Stopped
Microsoft Exchange Information Store                          MSExchangeIS                  Running
Microsoft Exchange Mailbox Assistants                         MSExchangeMailboxAssistants   Running
Microsoft Exchange Mailbox Replication                        MSExchangeMailboxReplication  Running
Microsoft Exchange Notifications Broker                       MSExchangeNotificationsBroker Stopped
Microsoft Exchange POP3                                       MSExchangePop3                Stopped
Microsoft Exchange POP3 Backend                               MSExchangePOP3BE              Stopped
Microsoft Exchange Replication                                MSExchangeRepl                Running
Microsoft Exchange RPC Client Access                          MSExchangeRPC                 Running
Microsoft Exchange Service Host                               MSExchangeServiceHost         Running
Microsoft Exchange Mailbox Transport Submission               MSExchangeSubmission          Running
Microsoft Exchange Throttling                                 MSExchangeThrottling          Running
Microsoft Exchange Transport                                  MSExchangeTransport           Running
Microsoft Exchange Transport Log Search                       MSExchangeTransportLogSearch  Running
Microsoft Exchange Unified Messaging                          MSExchangeUM                  Running
Microsoft Exchange Unified Messaging Call Router              MSExchangeUMCR                Running
Tracing Service for Search in Exchange                        SearchExchangeTracing         Running
Microsoft Exchange Server Extension for Windows Server Backup wsbexchange                   Stopped

Restart all Exchange running services

Only restart the Exchange running services.

[PS] C:\>$services = Get-Service | ? { $_.name -like "MSExchange*" -and $_.Status -eq "Running"};foreach ($service in $services) {Restart-Service $service.name -Force}

What if there are Exchange services not running? The above command will not restart these Exchange services.

Restart all Exchange services with startup type automatic

Restart all Exchange services with startup type automatic. If an Exchange service is stopped at the moment with startup type automatic, it will start after running the command.

[PS] C:\>$services = get-wmiobject win32_service | ? {$_.name -like "MSExchange*" -and $_.StartMode -eq "Auto"};foreach ($service in $services) {Restart-Service $service.name -Force}

Restart all Exchange services

The third and last command in the article will restart all the Exchange services.

[PS] C:\>Get-Service *Exchange* | Where {$_.DisplayName -NotLike "*Hyper-V*"}  | Restart-Service -Force

Conclusion

With the proper PowerShell command, you can restart all the Exchange services. Did the PowerShell command help you to restart the Exchange Server services? I hope that this article was informative to you. Did you enjoy this article? You may like Get Exchange mailbox database mount status with PowerShell. Don’t forget to follow us and share this article.

ALI TAJRAN

ALI TAJRAN

ALI TAJRAN is a passionate IT Architect, IT Consultant, and Microsoft Certified Trainer. He started Information Technology at a very young age, and his goal is to teach and inspire others. Read more »

This Post Has 0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *