The Exchange logs disk is getting full, and you want to truncate Exchange logs without…
Enable search indexing in Exchange Server
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 in Exchange Server.
Table of contents
Get Exchange search indexing status
First, let’s get the index status on each database. Run Exchange Management Shell as administrator.
Index Enabled shows False for database DB01 and DB02.
[PS] C:\>Get-MailboxDatabase | Select Name, IndexEnabled | Format-Table -AutoSize
Name IndexEnabled
---- ------------
DB01 False
DB02 False
DB03 True
DB04 True
If you have a Database Availability Group (DAG) configured, you want to list the databases, including the database copy.
The Get-MailboxDatabaseCopyStatus cmdlet will give you more information regarding the indexing.
[PS] C:\>Get-MailboxDatabaseCopyStatus * | Sort Name | Select Name, Status, ContentIndexState
Name Status ContentIndexState
---- ------ -----------------
DB01\EX01 Mounted Disabled
DB01\EX02 Healthy Disabled
DB02\EX01 Mounted Disabled
DB02\EX02 Healthy Disabled
DB03\EX01 Mounted Healthy
DB03\EX02 Healthy Healthy
DB04\EX01 Mounted Healthy
DB04\EX02 Healthy Healthy
We have indexing disabled on more than one database. Let’s enable indexing on one of the disabled databases.
Enable Exchange search indexing
We want to enable indexing for DB01.
Note: Ensure you enable indexing on a database after working hours or at an off-peak time. It will take some CPU utilization on the server.
[PS] C:\>Set-MailboxDatabase "DB01" -IndexEnabled $true
Indexing is enabled on DB01. Let’s verify if everything went successful.
Check Exchange search indexing status
Give it a couple of minutes before checking the status.
[PS] C:\>Get-MailboxDatabaseCopyStatus * | Sort Name | Select Name, Status, ContentIndexState
Name Status ContentIndexState
---- ------ -----------------
DB01\EX01 Mounted Crawling
DB01\EX02 Healthy FailedAndSuspended
DB02\EX01 Mounted Disabled
DB02\EX02 Healthy Disabled
DB03\EX01 Mounted Healthy
DB03\EX02 Healthy Healthy
DB04\EX01 Mounted Healthy
DB04\EX02 Healthy Healthy
If you have a DAG, the mounted database will show as Crawling.
Note: The Exchange Search indexes can crawl for a day or more, depending on the size of your database.
Look in Performance Monitor and select the MSExchange Search Indexes counter. Select Crawler: Mailboxes Remaining. Have a look at the mailboxes remaining status.
Read more: How to monitor Exchange database index state crawling »
In our example, the total shows as 0,000, which means that crawling is finished.
After the crawling finish, the database DB01 and the database copy will appear as Healthy.
[PS] C:\>Get-MailboxDatabaseCopyStatus * | Sort Name | Select Name, Status, ContentIndexState
Name Status ContentIndexState
---- ------ -----------------
DB01\EX01 Mounted Healthy
DB01\EX02 Healthy Healthy
DB02\EX01 Mounted Disabled
DB02\EX02 Healthy Disabled
DB03\EX01 Mounted Healthy
DB03\EX02 Healthy Healthy
DB04\EX01 Mounted Healthy
DB04\EX02 Healthy Healthy
If the content index state changes from Crawling to Failed, read the article Repair failed content index in Exchange.
Conclusion
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.
This did not work. How do I enable indexing on a specific database copy in a DAG? Thanks
I tested this on Exchange Server 2016, and it works. However, if you use Exchange Server 2019, that will not work as it’s changed from that version.
Read more: Exchange Server Content index state: NotApplicable.