List Indexes | MongoDB Indexing Tutorial
Compound Index | MongoDB Indexing Tutorial
Index Performance | MongoDB Indexing Tutorial
Indexing Types | MongoDB Indexing Tutorial
Unique Index | MongoDB Indexing Tutorial
List Indexes | MongoDB Indexing Tutorial
Create Index | MongoDB Indexing Tutorial
List indexes in a collection
db.getCollection('documents').getIndexes()
This returns all of the indexes on a people collection.
This operation returns an array of objects representing the different indexes...
[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"email" : 1.0,
"firstName": 1.0
},
"name" : "email_1"
}
]
Notice how the array returns two objects. This is because we've defined two indexes on our people collection.
v indicates the version of the index.
key indicates the fields(s) used in the index. Notice how the first entry has the single field key _id whereas the second represents a compound index ({email:1, firstName:1})
name represents the name given to the index.
List indexes in entire DB
db.getCollectionNames().forEach(function(collection) {
indexes = db[collection].getIndexes();
print("Indexes for " + collection + ":");
printjson(indexes);
});
This loops through all of the collections in one go to generate the same output for each index in one go...
Indexes for people:
[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"email" : 1,
"firstName" : 1
},
"name" : "email_1"
}
]
Indexes for places:
[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"location" : 1
},
"name" : "location_1"
}
]
Notice how we can list all of the indexes in one operation. We get both the indexes for the people and places collection in one go.

