Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

db.collection.dropIndex() (método mongosh)

MongoDB con controladores

Esta página documenta un método mongosh. Para ver el método equivalente en un driver de MongoDB, consulte la página correspondiente a su lenguaje de programación:
db.collection.dropIndex(index)

Descarta o remueve el índice especificado de una colección.

Nota

Para obtener el nombre del índice o el documento de especificación del índice para el método,db.collection.dropIndex() db.collection.getIndexes() utilice el método.

El método toma el siguiente db.collection.dropIndex() parámetro:

Parameter
Tipo
Descripción

index

string o documento

Requerido. Especifica el índice a descartar. Se puede especificar el índice ya sea por el nombre del índice o por el documento de especificación del índice.

Para descartar un índice de texto, se debe especificar el nombre del índice.

No se puede especificar "*" para descartar todos los índices que no sean_id. Se puede utilizar db.collection.dropIndexes() en su lugar.

Si un índice especificado en aún db.collection.dropIndex() se está creando, intenta detener la creación en curso. Detener la creacióndb.collection.dropIndex() de un índice tiene el mismo efecto que eliminar el índice creado. Consulte la sección "Detener la creación de índices en curso" para obtener documentación más completa.

Este método está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Nota

Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre la compatibilidad de Atlas con todos los comandos, consulte Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

A partir de MongoDB,5.2 puede usar db.collection.dropIndex() para eliminar índices existentes en la misma colección, incluso si hay una creación en curso en otro índice. En versiones anteriores, intentar eliminar un índice diferente durante una creación de índice en curso genera un BackgroundOperationInProgressForNamespace error.

db.collection.dropIndex() obtiene un bloqueo exclusivo sobre la colección especificada durante la duración de la operación. Todas las operaciones posteriores sobre la colección deben esperar hasta que libere el db.collection.dropIndex() bloqueo.

Si un índice especificado en aún se db.collection.dropIndex() db.collection.dropIndex() está creando, intenta detener la creación en curso. Detener la creación de un índice tiene el mismo efecto que eliminar el índice creado.

Para conjuntos de réplicas, ejecute db.collection.dropIndex() en el nodo principal. El nodo principal detiene la compilación del índice ycrea una entrada de oplog "abortIndexBuild" asociada. Los nodos secundarios que replican la entrada de oplog "abortIndexBuild" detienen la compilación del índice en curso y descartan el trabajo de compilación.Consulte el proceso de compilación del índice para obtener documentación detallada sobre dicho proceso.

Se puede utilizar currentOp para identificar las creaciones de índices asociadas a una operación createIndexes o db.collection.createIndexes(). Consultar Operaciones de indexación activas para ver un ejemplo.

MongoDB ofrece la capacidad de ocultar o mostrar los índices del planificador de las query. Al ocultar un índice del planificador, puedes evaluar el impacto potencial de eliminar un índice sin realmente eliminarlo.

Si después de la evaluación, el usuario decide descartar el índice, puedes descartar el índice oculto; es decir, no es necesario mostrarlo primero para descartarlo.

Sin embargo, si el impacto es negativo, el usuario puede mostrar el índice en lugar de tener que volver a crear un índice descartado. Y como los índices se mantienen en su totalidad mientras están ocultos, están disponibles de inmediato para su uso una vez que se desocultan.

Para obtener más información sobre los índices ocultos, se puede consultar Índices ocultos.

En una colección pets, crea un índice descendente en el campo cat:

db.pets.createIndex( { cat: -1 }, { name: "catIdx" } )

Para ver los índices de la colección pets, ejecuta el método getIndexes():

db.pets.getIndexes()
[
{ v: 2, key: { _id: 1 }, name: '_id_' },
{ v: 2, key: { cat: -1 }, name: 'catIdx' }
]

El único índice de campo en el campo cat tiene el nombre especificado por el usuario como catIdx y el documento de especificación del índice como { "cat" : -1 }.

Para descartar el índice catIdx, se puede usar el nombre del índice:

db.pets.dropIndex( "catIdx" )

O se puede usar el documento de especificaciones del índice { "cat" : -1 }:

db.pets.dropIndex( { "cat" : -1 } )

El comando dropIndex devuelve el número de índices en la colección antes de que se ejecute el comando e indica si el comando fue exitoso:

{ nIndexesWas: 2, ok: 1 }

Para confirmar que se descartó el índice, ejecuta el método getIndexes() de nuevo:

db.pets.getIndexes()
[ { v: 2, key: { _id: 1 }, name: '_id_' } ]