- Reference >
- Database Commands >
- Administration Commands >
- reIndex
reIndex¶
On this page
Definition¶
-
reIndex
¶ Deprecated since version 6.0.
Attempting to run the
reIndex
command writes a warning message to the log.The
reIndex
command drops all indexes on a collection and recreates them. This operation may be expensive for collections that have a large amount of data and/or a large number of indexes.Warning
reIndex
may only be run on standalone instances.- For most users, the
reIndex
command is unnecessary.
Use the following syntax:
The command takes the following fields:
Field Description reIndex The name of the collection to reindex. mongosh
provides a wrapperdb.collection.reIndex()
.
Behavior¶
For MongoDB 5.0 or later, reIndex
may only be run on
standalone instances.
Resource Locking¶
Changed in version 4.2.2.
For MongoDB 4.2.2 and later, reIndex
obtains an exclusive
(W) lock on the collection and blocks other operations on the collection
until it completes.
For MongoDB 4.0.0 through 4.2.1, reIndex
obtains a global
exclusive (W) lock and blocks other operations on the
mongod
until it completes.
For MongoDB 3.6 and earlier, reIndex
obtains an exclusive (W) lock on the database and blocks other
operations on the database until finished.
For more information on locking in MongoDB, see FAQ: Concurrency.
See
Index Builds on Populated Collections for more information on the behavior of indexing operations in MongoDB.