Il existe plusieurs façons de supprimer un index dans MongoDB, dont l'une consiste à utiliser le dropIndex() méthode.
C'est assez simple à utiliser - il suffit de passer le nom de l'index ou son document de définition/spécification. S'il s'agit d'un index de texte, vous ne pouvez spécifier que le nom de l'index.
Exemples d'index
Supposons que nous ayons une collection appelée bars . Nous pouvons utiliser getIndexes() pour voir de quels index il dispose :
db.bars.getIndexes() Résultat :
[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_"
},
{
"v" : 2,
"key" : {
"location" : "2dsphere"
},
"name" : "location_2dsphere",
"2dsphereIndexVersion" : 3
},
{
"v" : 2,
"key" : {
"name" : 1
},
"name" : "name_1",
"hidden" : true
}
]
Nous pouvons voir qu'il y a trois index sur les bars collecte.
- Le premier index est sur le
_iddomaine. MongoDB crée un index unique sur le_idchamp lors de la création d'une collection. Vous ne pouvez pas supprimer cet index. - Le deuxième index est un index 2dsphere sur
locationchamp. - Le troisième index est sur le
namedomaine. Dans ce cas, il s'agit d'un index caché (il a"hidden" : truedans sa spécification).
Déposer un index par nom
Voici un exemple de suppression d'un index en passant son nom au dropIndex() méthode :
db.bars.dropIndex("location_2dsphere") Sortie :
{ "nIndexesWas" : 3, "ok" : 1 } Cela nous indique que l'index a été supprimé avec succès.
Déposer un index par sa spécification
Voici un exemple de suppression d'un index en passant son document de spécification au dropIndex() méthode :
db.bars.dropIndex( { "name" : 1 } ) Sortie :
{ "nIndexesWas" : 2, "ok" : 1 } Nous pouvons voir que cet index a également été supprimé.
Vous vous souviendrez que c'est l'index qui était caché. Vous pouvez supprimer des index cachés sans problème (vous n'avez pas besoin de les afficher avant de les supprimer).
Vérifiez les résultats
Exécutons getIndexes() à nouveau pour voir les résultats :
db.bars.getIndexes() Résultat :
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_" } ]
Cette fois, il n'y a qu'un seul index - le _id par défaut indice.
Le dropIndex() la méthode est un wrapper autour des dropIndexes commande.
Documentation MongoDB
Voir la documentation MongoDB pour plus d'informations sur le dropIndex() méthode.