skip to Main Content

Enable search indexing Exchange

You like to enable search indexing on your Exchange Server. By default, Exchange Search is enabled for all new mailbox databases. The databases don’t require additional configuration. But, when you are migrating users to a new database, we recommend disabling the search index. Disable indexing on that specific database or entire Exchange server. In this article, you learn how to enable search indexing on the Exchange Server.

Get status search indexing in Exchange

First, let’s get the index status on each database. Run Exchange Management Shell as administrator. Index Enabled is showing False for database DB1 and DB2.

[PS] C:\>Get-MailboxDatabase | Select Name, IndexEnabled | Format-Table -AutoSize

Name IndexEnabled
---- ------------
DB1         False
DB2         False
DB3          True
DB4          True

If you have a Database Availability Group (DAG) configured, you want to list the databases, including the database copy. The following cmdlet will give you more information regarding the indexing.

[PS] C:\>Get-MailboxDatabaseCopyStatus * | Sort Name | Select Name, Status, ContentIndexState

Name      Status ContentIndexState
----      ------ -----------------
DB1\EX01 Mounted          Disabled
DB1\EX02 Healthy          Disabled
DB2\EX01 Mounted          Disabled
DB2\EX02 Healthy          Disabled
DB3\EX01 Mounted           Healthy
DB3\EX02 Healthy           Healthy
DB4\EX01 Mounted           Healthy
DB4\EX02 Healthy           Healthy

We have indexing disabled on more than one database. Let’s enable indexing on one of the disabled databases.

Enable search indexing in Exchange

We want to enable indexing for DB1. Make sure that you enable indexing on a database after working hours or at an off-peak time. It will take some CPU utilization on the server. Enable indexing on the database DB1.

[PS] C:\>Set-MailboxDatabase "DB1" -IndexEnabled $true

Indexing is enabled on DB1. Let’s verify if everything went successful.

Check status search indexing in Exchange

Give it a couple of minutes before checking the status. After a couple of minutes, check the status.

[PS] C:\>Get-MailboxDatabaseCopyStatus * | Sort Name | Select Name, Status, ContentIndexState

Name      Status  ContentIndexState
----      ------  -----------------
DB1\EX01 Mounted           Crawling
DB1\EX02 Healthy FailedAndSuspended
DB2\EX01 Mounted           Disabled
DB2\EX02 Healthy           Disabled
DB3\EX01 Mounted            Healthy
DB3\EX02 Healthy            Healthy
DB4\EX01 Mounted            Healthy
DB4\EX02 Healthy            Healthy

If you have a DAG, the mounted database will show as Crawling.

Note that it can crawl for a day or more, depends on the size of your database. Have a look at the Performance Monitor and select the MSExchange Search Indexes counter. Select Crawler: Mailboxes Remaining. Have a look at the remaining mailboxes status. The total is showing as 0,000. Crawling is finished.

Read more: How to monitor Exchange database index state crawling »

After the crawling finish, the database DB1 and the database copy will both show up as Healthy.

[PS] C:\>Get-MailboxDatabaseCopyStatus * | Sort Name | Select Name, Status, ContentIndexState

Name      Status ContentIndexState
----      ------ -----------------
DB1\EX01 Mounted           Healthy
DB1\EX02 Healthy           Healthy
DB2\EX01 Mounted          Disabled
DB2\EX02 Healthy          Disabled
DB3\EX01 Mounted           Healthy
DB3\EX02 Healthy           Healthy
DB4\EX01 Mounted           Healthy
DB4\EX02 Healthy           Healthy

If the content index state changes from Crawling to Failed, read the article Repair failed content index in Exchange.

Conclusion

In this article, you learned how to enable search indexing in Exchange Server. It’s crucial to enable search indexing after working hours or at an off-peak time as it can impact performance.

Did you enjoy this article? You may also like Search and delete messages from Exchange user mailboxes. 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 2 Comments

Leave a Reply

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