createIndexes (Construir Índices)

Última atualização: 2026-10-09

createIndexes (Construir Índices)

createIndexes constrói índices em uma coleção — de campo único, compostos, únicos, TTL, text e geoespaciais. No mongosh, o helper db.collection.createIndex({ field: 1 }) é o típico. As construções de índice consomem recursos; em coleções grandes, leituras e escritas continuam durante o build híbrido (padrão desde a 4.2). A ordem dos campos em índices compostos molda o suporte a consultas.

CategoriaComandos de Administração
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

db.orders.createIndex({ userId: 1, createdAt: -1 })
db.users.createIndex({ email: 1 }, { unique: true })
db.runCommand({ createIndexes: "orders", indexes: [{ key: { userId: 1 }, name: "user" }] })

⚙️ Parâmetros

keyChaves e direções de índice, por exemplo { userId: 1, createdAt: -1 }.
uniqueDefina true para um índice único.
nameNome do índice; gerado automaticamente quando omitido.

Retorno:Retorna numIndexesBefore, numIndexesAfter e ok

▶ Exemplo

Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):

// createIndexes: índices compostos e únicos
use shop
db.orders.createIndex({ userId: 1, createdAt: -1 })
db.users.createIndex({ email: 1 }, { unique: true })

Saída:

{ numIndexesBefore: 1, numIndexesAfter: 2, ok: 1 }

📌 Notas

Mais casos práticos em breve.

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QComo devo ordenar os campos em um índice composto?
AColoque campos de filtro por igualdade primeiro, e campos de faixa e ordenação depois.
QO que acontece em inserções duplicadas com um índice único?
AA inserção falha com um erro de chave duplicada.
QA criação de índice bloqueia o banco?
ADesde a 4.2, o build híbrido mantém leituras e escritas em execução, embora CPU e E/S sejam consumidas.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%