MongoDB con controladores
Esta página documenta una mongosh . Para ver el método equivalente en un driver de MongoDB, se debe consultar la página correspondiente al lenguaje de programación:
Definición
db.collection.renameCollection(target, dropTarget)Renombra una colección. Proporciona un contenedor para la
renameCollectioncomando de base de datos.ParameterTipoDescripcióntargetstring
El nuevo nombre de la colección. Encierra la string entre comillas. Consulta restricciones de nomenclatura.
dropTargetbooleano
Opcional. Si
truees, eliminamongodeltargetde antes de renombrar la colección. El valorrenameCollectionpredeterminadofalsees.
Comportamiento
El método opera dentro de una colección cambiando los metadatos asociados con una colección db.collection.renameCollection() determinada.
Consulte la documentación para obtener advertencias y mensajes renameCollection adicionales.
Advertencia
El db.collection.renameCollection() método y renameCollection el comando invalidarán los cursores abiertos que interrumpen las consultas que actualmente están devolviendo datos.
Para los flujos de cambio, el db.collection.renameCollection() método y renameCollection el comando crean un evento de invalidación para cualquier flujo de cambio existente abierto en la colección de origen o de destino.
El método tiene las siguientes limitaciones:
db.collection.renameCollection()no puede mover una colección entre bases de datos. Use para estas operaciones de cambio derenameCollectionnombre.No puede cambiar el nombre de vistas.
db.collection.renameCollection()no es compatible con colecciones de series temporales.No se puede renombrar una colección a sí misma. Si se intenta renombrar una colección a sí misma, se genera un error
IllegalOperation.
Bloqueo de recursos en clústeres fragmentados
Modificado en la versión 5.0.
Al cambiar el nombre de una colección particionada o no particionada en un clúster, las colecciones de origen y destino se bloquean exclusivamente en cada partición. Las operaciones posteriores en las colecciones de origen y destino deben esperar hasta que se complete la operación de cambio de nombre.
Para obtener más información sobre el bloqueo en MongoDB, consulte Preguntas frecuentes: Concurrencia.
Bloqueo de recursos en conjuntos de réplicas
renameCollection() obtiene un bloqueo exclusivo en las colecciones de origen y destino durante la operación. Todas las operaciones posteriores en las colecciones deben esperar hasta que se renameCollection() complete.
Interacción con mongodump
Un mongodump iniciado con falla si --oplog un cliente emite durante el proceso de db.collection.renameCollection() mongodump.--oplog volcado. Consulte para obtener más información.
Ejemplo
Llamar al método en un objeto de colección. Por db.collection.renameCollection() ejemplo:
db.rrecord.renameCollection("record")
Esta operación cambiará el nombre de la colección rrecord a record. Si el nombre de destino (es decir, record) es el nombre de una colección existente, la operación fallará.