db.collection.copyTo()

在本页面

定义

  • db.collection. copyTo(newCollection)

    • 自 version 3.0 以来已弃用。

使用 server-side JavaScript 将collection中的所有文档复制到newCollection。如果newCollection不存在,MongoDB 会创建它。

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

参数类型描述

newCollection

string

要将数据写入的集合的 name。

警告

使用 db.collection.copyTo()检查字段类型时,确保操作不会在从 BSON 转换为 JSON 期间从文档中删除类型信息。 db.collection.copyTo()方法在内部使用EVAL命令。因此,db.collection.copyTo()操作采用 global 锁定,阻止所有其他读取和写入操作,直到db.collection.copyTo()完成。

copyTo()返回复制的文档数。如果复制失败,则抛出 exception。

行为

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

例子

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

db.source.copyTo(target)

译者:李冠飞

校对:

最后更新于