MongoDB com drivers
Definição
db.collection.getIndexes()Retorna uma array que contém uma lista de documentos que identificam e descrevem os índices existentes na collection, incluindo índices ocultos e índices que estão sendo criados no momento.
Você deve chamar em uma coleção. Por
db.collection.getIndexes()exemplo:db.collection.getIndexes() Altere
collectionpara o nome da coleção para a qual as informações do índice devem ser retornadas.
Compatibilidade
Esse método está disponível em implantações hospedadas nos seguintes ambientes:
- MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
Observação
Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Comportamento
Índices de pesquisa do Atlas
getIndexes() não retorna informações sobre os índices do Atlas Search. Para obter informações sobre os índices do Atlas Search ,$listSearchIndexes use.
Desconexão do cliente
Se o cliente que emitiu db.collection.getIndexes() se desconectar antes da conclusão da operação, o MongoDB marcará para db.collection.getIndexes() encerramento killOp usando.
Restrição de estado do membro do conjunto de réplica
Para executar em um nó do conjunto de réplicas, as operações delistIndexes exigem que o nó esteja no estado PRIMARY ou SECONDARY. Se o nó estiver em outro estado, como STARTUP2, haverá erros na operação.
Índices curinga
A partir do MongoDB 6.3, 6.0.5 e 5.0.16, o campo wildcardProjection armazena a projeção do índice na forma enviada. Versões anteriores do servidor podem ter armazenado a projeção de forma normalizada.
O servidor utiliza o índice da mesma maneira, mas você pode notar uma diferença na saída dos comandos listIndexes db.collection.getIndexes() e.
Acesso necessário
Para executar db.collection.getIndexes() quando o controle de acesso é aplicado, os usuários devem ter privilégios para listIndexes na collection.
O papel embutido read fornece os privilégios exigidos para executar db.collection.getIndexes() para as coleções em um banco de dados.
Saída
db.collection.getIndexes() retorna uma série de documentos que contêm informações de índice para a coleta. Por exemplo:
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_" }, { "v" : 2, "key" : { "status" : 1 }, "name" : "status_1" }, { "v" : 2, "key" : { "points" : 1 }, "name" : "points_1" } ]
As informações do índice incluem as chaves e opções usadas para criar o índice. A opção de índice hidden só estará disponível se o valor for true.
Para informações sobre as chaves e opções de índice, consulte db.collection.createIndex().