Er zijn verschillende manieren om een index in MongoDB te laten vallen, een daarvan is om de dropIndex()
te gebruiken methode.
Het is vrij eenvoudig te gebruiken - geef gewoon de naam van de index of het definitie-/specificatiedocument door. Als het een tekstindex is, kunt u alleen de indexnaam specificeren.
Voorbeeldindexen
Stel dat we een verzameling hebben met de naam bars
. We kunnen getIndexes()
. gebruiken om te zien welke indexen het heeft:
db.bars.getIndexes()
Resultaat:
[ { "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 } ]
We kunnen zien dat er drie indexen zijn op de bars
collectie.
- De eerste index staat op de
_id
veld. MongoDB creëert een unieke index op de_id
veld tijdens het maken van een collectie. U kunt deze index niet verwijderen. - De tweede index is een 2dsphere-index op de
location
veld. - De derde index staat op de
name
veld. In dit geval is het een verborgen index (deze heeft"hidden" : true
in de specificatie).
Een index op naam neerzetten
Hier is een voorbeeld van het verwijderen van een index door de naam ervan door te geven aan de dropIndex()
methode:
db.bars.dropIndex("location_2dsphere")
Uitgang:
{ "nIndexesWas" : 3, "ok" : 1 }
Dit vertelt ons dat de index succesvol is verwijderd.
Laat een index vallen op basis van zijn specificatie
Hier is een voorbeeld van het verwijderen van een index door het specificatiedocument door te geven aan de dropIndex()
methode:
db.bars.dropIndex( { "name" : 1 } )
Uitgang:
{ "nIndexesWas" : 2, "ok" : 1 }
We kunnen zien dat deze index ook is verwijderd.
U zult zich herinneren dat dit de index is die verborgen was. U kunt verborgen indexen zonder problemen verwijderen (u hoeft ze niet zichtbaar te maken voordat u ze verwijdert).
Controleer de resultaten
Laten we getIndexes()
uitvoeren nogmaals om de resultaten te zien:
db.bars.getIndexes()
Resultaat:
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_" } ]
Deze keer is er maar één index:de standaard _id
index.
De dropIndex()
methode is een wrapper rond de dropIndexes
commando.
MongoDB-documentatie
Zie de MongoDB-documentatie voor meer informatie over de dropIndex()
methode.