How to identify which Microsoft Exchange Store Worker process is owned by Mailbox Database in Exchange Server 2013

Microsoft Exchange Store is now managed Store. Over the years Exchange Server product group has made significant changes and Exchange Server 2013 is a very good example of that. To know more about the architecture you can read them here at TechNet. Look for Managed store.


This blog is to address How to identify which Microsoft Exchange Store Worker process is owned by which store. Since as per the architecture the more stores you create you will see “Microsoft Exchange Store Worker.exe” for each databases. Now each of them will have their own process ID.

Lets Explore


Figure 1.1 : Number of database mounted and active


Figure 1.2 : Microsoft Exchange Information Store Service

Microsoft Exchange Information Store Service is started.


Figure 1.3 : Binary files inside Bin folders

In figure 1.3 we have “Microsoft.Exchange.Store.Service.exe” and “Microsoft.Exchange.Store.Worker.exe”.


Figure 1.4 : Processes as seen on Task Manager

In figure 1.4 we have the core service for store running and also store workers are running. The number of workers we see here is 5. This means that we have 5 Mailbox Database up and running. If you want to know which process hold which store then its little difficult. Lets move ahead by collecting more data.

Open Microsoft Exchange Shell and type the below command.


Figure 1.5 : Mailbox Database Name and Guid

In figure 1.5 what we can see is the name and guid. Every Mailbox database will have its own Guid. Now it is very easy for us to identify the process.

To do that we have to download process explorer. You can get your copy from sysinternals.


Figure 1.6 : Processes explored.

In figure 1.6 we can see the process with process ID’s. Now right click any one process and select properties.


Figure 1.7 : Properties of Worker Process 19548

Note : Process ID will change every time you reboot or restart the Store Service.

In figure 1.7 copy the command line output to a Notepad as shown below.


Figure 1.8 : The copied output using Explorer.

Now its time to compare them.


Figure 1.9 : Guid Matched.

In figure 1.9 we have identified the guid to be matching to 5th Store which has a PID 19548. You can now safely take that store down for maintenance if it has any problem.


In this blog we have explored how to identify the worker process with the help of process explorer.

Benefits of this design in exchange server 2013.

If you want to kill a store which is consuming high Memory or CPU you can do that which was not the case with previous versions of exchange.

In previous version of exchange you end up killing the store process itself. Which in turn will have downtime for the entire user mailboxes.


Happy Learning


MSEXCHANGETEAM | Ideas That Clicks

Tagged . Bookmark the permalink.

One Response to How to identify which Microsoft Exchange Store Worker process is owned by Mailbox Database in Exchange Server 2013

  1. Sunder says:

    Hi All,

    The same can also be achieved by running the following command via powershell.

    Get-MailboxDatabase -Server “ServerName” -Status | fl name, Guid, Worker*

    Options are there. Choice is yours.