- Reference >
mongo
Shell Methods >- Collection Methods >
- db.collection.reIndex()
db.collection.reIndex()¶
-
db.collection.
reIndex
()¶ The
db.collection.reIndex()
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.Call this method, which takes no arguments, on a collection object. For example:
Normally, MongoDB compacts indexes during routine updates. For most users, the
db.collection.reIndex()
is unnecessary. However, it may be worth running if the collection size has changed significantly or if the indexes are consuming a disproportionate amount of disk space.Note
For replica sets,
db.collection.reIndex()
will not propagate from the primary to secondaries.db.collection.reIndex()
will only affect a singlemongod
instance.Important
db.collection.reIndex()
will rebuild indexes in the background if the index was originally specified with this option. However,db.collection.reIndex()
will rebuild the_id
index in the foreground, which takes the database’s write lock.
See
Index Creation for more information on the behavior of indexing operations in MongoDB.