Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

db.coleção.dropIndexes() (método mongosh)

MongoDB com drivers

This page documents a mongosh method. To see the equivalent method in a MongoDB driver, see the corresponding page for your programming language:
db.collection.dropIndexes()

Descarta o(s) index(es) especificado(s) (exceto o index no field _id e o último index de chave de estilhaço restante) de uma coleção.

Você pode usar o método para:

  • Solte todos, exceto o índice _id de uma coleção.

    db.collection.dropIndexes()
  • Solte um índice especificado de uma coleção. Para especificar o índice, você pode passar o método:

    • O documento de especificação do índice (a menos que o índice seja um índice de texto; nesse caso, use o nome do índice para descartar):

      db.collection.dropIndexes( { a: 1, b: 1 } )
    • O nome do índice:

      db.collection.dropIndexes( "a_1_b_1" )

      Dica

      Para obter os nomes dos índices, utilize o método db.collection.getIndexes().

  • Descarte os índices especificados de uma coleção. Para especificar vários índices a serem descartados, passe ao método uma array de nomes de índices:

    db.collection.dropIndexes( [ "a_1_b_1", "a_1", "a_1__id_-1" ] )

    Se a array de nomes de índice incluir um índice inexistente, o método errará sem eliminar nenhum dos índices especificados.

    Dica

    Para obter os nomes dos índices, utilize o método db.collection.getIndexes().

The db.collection.dropIndexes() method takes the following optional parameter:

Parâmetro
Tipo
Descrição

indexes

string ou documento ou array de strings

Opcional. Especifica o índice ou índices a serem eliminados.

Para descartar todos, exceto o índice _id da coleção, omita o parâmetro.

Para soltar um único índice, especifique o nome do índice, o documento de especificação do índice (a menos que o índice seja um índice de texto) ou uma array do nome do índice. Para descartar um índice de texto , especifique o nome do índice ou uma array do nome do índice em vez do documento de especificação do índice.

Para descartar vários índices, especifique uma array com os nomes dos índices.

Starting in MongoDB 6.0, db.collection.dropIndexes() raises an error if you attempt to use it to remove the last remaining shard key compatible index. Passing "*" to db.collection.dropIndexes() drops all indexes except the _id index and the last remaining shard key compatible index, if one exists.

Starting in MongoDB 5.2, you can use db.collection.dropIndexes() to drop existing indexes on the same collection even if there is a build in progress on another index. In earlier versions, attempting to drop a different index during an in-progress index build results in a BackgroundOperationInProgressForNamespace error.

The dropIndexes() operation only kills queries that are using the index being dropped. This may include queries considering the index as part of query planning.

db.collection.dropIndexes() obtains an exclusive lock on the specified collection for the duration of the operation. All subsequent operations on the collection must wait until db.collection.dropIndexes() releases the lock.

Se for passada ao método um array de nomes de índices que inclua um índice inexistente, o método cometerá um erro sem descartar nenhum dos índices especificados.

Você não pode eliminar o índice padrão no campo _id .

Para eliminar um índice de texto, especifique o nome do índice em vez do documento de especificação do índice.

If an index specified to db.collection.dropIndexes() is still building, db.collection.dropIndexes() attempts to stop the in-progress build. Stopping an index build has the same effect as dropping the built index.

For replica sets, run db.collection.dropIndexes() on the primary. The primary stops the index build and creates an associated "abortIndexBuild" oplog entry. Secondaries which replicate the "abortIndexBuild" oplog entry stop the in-progress index build and discard the build job. See Index Build Process for detailed documentation on the index build process.

Utilize currentOp para identificar as construções de índice associadas com uma operação do createIndexes ou db.collection.createIndexes(). Consulte Operações de indexação ativas para ver um exemplo.

O MongoDB oferece a capacidade de ocultar ou exibir índices do planejador de query. Ao ocultar um índice do planejador, você pode avaliar o impacto potencial de descartar um índice sem realmente descartá-lo.

Se, após a avaliação, o usuário decidir descartar o índice, você poderá descartar o índice oculto; ou seja, você não precisa exibi-lo primeiro para descartá-lo.

Se, no entanto, o impacto for negativo, o usuário poderá exibir o índice em vez de precisar recriá-lo. E, como são totalmente mantidos enquanto estão ocultos, os índices ficam imediatamente disponíveis para uso quando são exibidos.

Para obter mais informações sobre índices ocultos, consulte Índices ocultos.

Avalie esta página