Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

db.colección.renameCollection() (método mongosh)

MongoDB con controladores

Esta página documenta a mongosh . Para ver el método equivalente en un driver de MongoDB, se debe consultar la página correspondiente al lenguaje de programación:

C#Java SyncNode.jsPyMongoCC++GoJava RSKotlin CoroutineKotlin SyncPHPMongoidRustScala
db.collection.renameCollection(target, dropTarget)

Renombra una colección. Proporciona un contenedor para la renameCollection comando de base de datos.

Parameter
Tipo
Descripción

target

string

El nuevo nombre de la colección. Encierra la string entre comillas. Consulta restricciones de nomenclatura.

dropTarget

booleano

opcional. Si true, mongod descarta el target de renameCollection antes de renombrar la colección. El valor por defecto es false.

Este método está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Nota

Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

El método db.collection.renameCollection() opera dentro de una colección cambiando los metadatos asociados a una colección dada.

Consulte la documentación renameCollection para advertencias y mensajes adicionales.

Advertencia

El método db.collection.renameCollection() y el comando renameCollection invalidan los cursores abiertos. Esto crea un evento de invalidación para cualquier flujo de cambios existente abierto en la colección origen o destino, y también interrumpe las consultas que estén devolviendo datos de la colección renombrada.

  • El método tiene las siguientes limitaciones:

    • db.collection.renameCollection() no se puede mover una colección entre bases de datos. Utilice renameCollection para estas operaciones de cambio de nombre.

    • No puede cambiar el nombre de vistas.

    • db.collection.renameCollection() no es compatible con colección de series de tiempo.

    • No puedes renombrar una colección con el mismo nombre. Si intenta renombrar una colección a sí misma, se lanza un error IllegalOperation.

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, consulta FAQ: Concurrency.

renameCollection() obtiene un bloqueo exclusivo sobre las colecciones de origen y de destino durante la duración de la operación. Todas las operaciones posteriores en las colecciones deben esperar hasta que renameCollection() se complete.

Un mongodump que comenzó con --oplog falla si un cliente emite db.collection.renameCollection() durante el proceso de vaciado. Consulta mongodump.--oplog para obtener más información.

Llamar al método db.collection.renameCollection() en un objeto de colección. Por 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) si es el nombre de una colección existente, la operación fallará.

Volver

db.colección.Remover

En esta página