renameCollection (Renomear Coleção)
Última atualização: 2026-10-09
renameCollection (Renomear Coleção)
renameCollection renomeia uma coleção dentro ou entre bancos e deve rodar no db admin (db.adminCommand). A renomeação move a coleção com seus índices e metadados; escritas nela são brevemente bloqueadas. dropTarget: true sobrescreve um alvo existente (perigoso — os dados são excluídos).
| Categoria | Comandos de Administração |
|---|---|
| Versão do MongoDB | 1.0+ |
| Idioma do Exemplo | mongosh (Shell) |
📝 Sintaxe
db.adminCommand({
renameCollection: "<db>.<collection>",
to: "<db>.<new name>",
dropTarget: false
})
⚙️ Parâmetros
| renameCollection | Coleção de origem como db.collection. |
|---|---|
| to | Destino como db.collection. |
| dropTarget | Defina true para sobrescrever um destino existente; use com cuidado. |
Retorno:Retorna { ok: 1 } em caso de sucesso
▶ Exemplo
Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):
// renameCollection: renomeia uma coleção
db.adminCommand({
renameCollection: 'shop.orders_2025',
to: 'shop.orders'
})
Saída:
{ ok: 1 }
📌 Notas
- Deve rodar no db admin com nomes totalmente qualificados
- dropTarget: true exclui o alvo — manuseie com cuidado
- Escritas na coleção pausam brevemente durante a renomeação
🏷️ Tags Relacionados
💡 Casos Relacionados
Mais casos práticos em breve.
📚 Tutoriais Relacionados
❓ Perguntas Frequentes
QO renameCollection pode mover coleções entre bancos?
ASim — qualifique ambos os nomes como db.coleção.
QRenomear perde dados?
ANão, a menos que dropTarget: true sobrescreva um alvo existente.
QOs índices sobrevivem a uma renomeação?
ASim — os índices se movem junto com os dados.