Es gibt mehrere Möglichkeiten, einen Index in MongoDB zu löschen, eine davon ist die Verwendung von dropIndex()
Methode.
Es ist ziemlich einfach zu verwenden – übergeben Sie einfach den Namen des Index oder sein Definitions-/Spezifikationsdokument. Wenn es sich um einen Textindex handelt, können Sie nur den Indexnamen angeben.
Beispielindizes
Angenommen, wir haben eine Sammlung namens bars
. Wir können getIndexes()
verwenden um zu sehen, welche Indizes es hat:
db.bars.getIndexes()
Ergebnis:
[ { "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 } ]
Wir können sehen, dass es drei Indizes auf den bars
gibt Sammlung.
- Der erste Index ist auf
_id
Feld. MongoDB erstellt einen eindeutigen Index für die_id
Feld während der Erstellung einer Sammlung. Sie können diesen Index nicht löschen. - Der zweite Index ist ein 2dsphere-Index am
location
Feld. - Der dritte Index ist auf
name
Feld. In diesem Fall handelt es sich um einen versteckten Index (er hat"hidden" : true
in seiner Spezifikation).
Löschen Sie einen Index nach Namen
Hier ist ein Beispiel für das Löschen eines Index, indem sein Name an dropIndex()
übergeben wird Methode:
db.bars.dropIndex("location_2dsphere")
Ausgabe:
{ "nIndexesWas" : 3, "ok" : 1 }
Dies sagt uns, dass der Index erfolgreich gelöscht wurde.
Löschen Sie einen Index anhand seiner Spezifikation
Hier ist ein Beispiel für das Löschen eines Indexes, indem sein Spezifikationsdokument an dropIndex()
übergeben wird Methode:
db.bars.dropIndex( { "name" : 1 } )
Ausgabe:
{ "nIndexesWas" : 2, "ok" : 1 }
Wir können sehen, dass dieser Index ebenfalls gelöscht wurde.
Sie werden sich daran erinnern, dass dies der ausgeblendete Index ist. Sie können versteckte Indizes problemlos löschen (Sie müssen sie nicht einblenden, bevor Sie sie löschen).
Überprüfen Sie die Ergebnisse
Lassen Sie uns getIndexes()
ausführen erneut, um die Ergebnisse zu sehen:
db.bars.getIndexes()
Ergebnis:
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_" } ]
Diesmal gibt es nur einen Index – die Standardeinstellung _id
index.
Der dropIndex()
Methode ist ein Wrapper um die dropIndexes
Befehl.
MongoDB-Dokumentation
Weitere Informationen zu dropIndex()
finden Sie in der MongoDB-Dokumentation Methode.