Copies all documents from collection into newCollection using server-side JavaScript. If newCollection does not exist, MongoDB creates it.

If authentication is enabled, you must have access to all actions on all resources in order to run db.collection.copyTo(). Providing such access is not recommended, but if your organization requires a user to run db.collection.copyTo(), create a role that grants anyAction on anyResource. Do not assign this role to any other user.

Parameter Type Description
newCollection string The name of the collection to write data to.


When using db.collection.copyTo() check field types to ensure that the operation does not remove type information from documents during the translation from BSON to JSON. Consider using cloneCollection() to maintain type fidelity.

copyTo() returns the number of documents copied. If the copy fails, it throws an exception.


Because copyTo() uses eval internally, the copy operations will block all other operations on the mongod instance.


The following operation copies all documents from the source collection into the target collection.