db.collection.copyTo()

在本页面

Definition

使用服务器端 JavaScript 将所有文档从collection复制到newCollection。如果newCollection不存在,则 MongoDB 会创建它。

如果启用了授权,则必须有权访问所有资源上的所有操作才能运行db.collection.copyTo()。不建议提供这种访问权限,但是如果您的组织要求用户运行db.collection.copyTo(),请创建一个在anyResource上授予anyAction的角色。不要将此角色分配给任何其他用户。

Parameter Type Description
newCollection string 要向其中写入数据的集合的名称。

Warning

使用db.collection.copyTo()时,请检查字段类型以确保该操作不会在从BSONJSON的转换过程中从文档中删除类型信息。

db.collection.copyTo()方法在内部使用eval命令。结果,db.collection.copyTo()操作获得一个全局锁,该全局锁将阻止所有其他读取和写入操作,直到db.collection.copyTo()完成。

copyTo()返回复制的文档数。如果复制失败,它将引发异常。

Behavior

因为copyTo()在内部使用eval,所以复制操作将阻止mongod实例上的所有其他操作。

Example

以下操作将所有文档从source集合复制到target集合。

db.source.copyTo(target)
首页