Hay varias formas de eliminar un índice en MongoDB, una de las cuales es usar dropIndex()
método.
Es bastante simple de usar:simplemente pase el nombre del índice o su documento de definición/especificación. Si es un índice de texto, solo puede especificar el nombre del índice.
Índices de ejemplo
Supongamos que tenemos una colección llamada bars
. Podemos usar getIndexes()
para ver que índices tiene:
db.bars.getIndexes()
Resultado:
[ { "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 } ]
Podemos ver que hay tres índices en las bars
colección.
- El primer índice está en
_id
campo. MongoDB crea un índice único en el_id
durante la creación de una colección. No puede eliminar este índice. - El segundo índice es un índice de 2dsphere en la
location
campo. - El tercer índice está en el
name
campo. En este caso, resulta ser un índice oculto (tiene"hidden" : true
en su especificación).
Soltar un índice por nombre
Aquí hay un ejemplo de soltar un índice pasando su nombre a dropIndex()
método:
db.bars.dropIndex("location_2dsphere")
Salida:
{ "nIndexesWas" : 3, "ok" : 1 }
Esto nos dice que el índice se eliminó con éxito.
Soltar un índice por su especificación
Aquí hay un ejemplo de cómo eliminar un índice al pasar su documento de especificación a dropIndex()
método:
db.bars.dropIndex( { "name" : 1 } )
Salida:
{ "nIndexesWas" : 2, "ok" : 1 }
Podemos ver que este índice también se eliminó.
Recordarás que este es el índice que estaba oculto. Puede eliminar índices ocultos sin ningún problema (no necesita mostrarlos antes de eliminarlos).
Comprueba los resultados
Ejecutemos getIndexes()
de nuevo para ver los resultados:
db.bars.getIndexes()
Resultado:
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_" } ]
Esta vez solo hay un índice:el _id
predeterminado. índice.
El dropIndex()
El método es un contenedor alrededor de dropIndexes
comando.
Documentación de MongoDB
Consulte la documentación de MongoDB para obtener más información sobre dropIndex()
método.