Docs Menu
Docs Home
/ /

db.collection.renameCollection() (método mongosh)

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:

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 es, eliminamongod el target de antes de renombrar la colección. El valor renameCollection predeterminado false es.

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.

A partir de MongoDB,8.1 renameCollection se incluye en la API estable1 V. Para usar renameCollection en la API estable, debe conectar su controlador a una implementación que ejecute MongoDB 8.1 o una versión posterior.

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

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

Advertencia

El db.collection.renameCollection() método y renameCollection el comando invalidan los cursores abiertos. Esto crea un evento de invalidación para cualquier flujo de cambios existente abierto en la colección de origen o destino, y también interrumpe las consultas que devuelven 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 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.

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.

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.

Un mongodump iniciado con falla si un cliente --oplog emite db.collection.renameCollection() durante el proceso de volcado. Consulte para obtener más mongodump.--oplog 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) es el nombre de una colección existente, la operación fallará.

Volver

db.colección.Remover

En esta página