On this page本页内容
reIndex
¶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
Use the following syntax:
The command takes the following fields:
reIndex | The name of the collection to reindex. |
The mongo
shell provides a wrapper db.collection.reIndex()
.
Note
For replica sets, reIndex
will not propagate from the primary to secondaries. reIndex
will only affect a single mongod
instance.
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.