Docs 菜单
Docs 主页
/
MongoDB Manual
/ / /

db.collection.renameCollection()

在此页面上

  • 定义
  • 行为
  • 例子
db.collection.renameCollection(target, dropTarget)

重要

mongosh 方法

本页面提供 mongosh 方法的相关信息。这不是数据库命令或特定语言驱动程序(例如 Node.js)的相关文档。

有关数据库命令,请参阅 renameCollection命令。

如需了解 MongoDB API 驱动程序,请参阅特定语言的 MongoDB 驱动程序文档。

重命名集合。为 renameCollection 数据库命令提供包装器。

参数
类型
说明
target
字符串
集合的新名称。将字符串括在引号中。请参阅命名限制
dropTarget
布尔
可选。如果 truemongod 在重命名集合之前删除 renameCollection 中的 target。默认值为 false

db.collection.renameCollection() 方法通过更改与给定集合相关的元数据,在集合内进行操作。

有关其他警告和消息,请参阅文档 renameCollection

警告

db.collection.renameCollection() 方法和 renameCollection 命令会使打开的游标失效,从而中断当前正在返回数据的查询。

对于变更流db.collection.renameCollection() 方法和 renameCollection 命令会为源集合或目标集合上打开的任何现有变更流创建 invalidate 状态。

5.0 版本中的更改

重命名分片集群中的分片集合或非分片集合时,源集合和目标集合都以独占方式锁定在每个分片上。对源集合和目标集合的后续操作必须等待重命名操作完成。

有关 MongoDB 中锁定的更多信息,请参阅常见问题解答:并发。

renameCollection() 在操作期间获得对源集合和目标集合的独占锁。对集合的所有后续操作都必须一直等到 renameCollection() 完成。

如果客户端在转储进程中发出 db.collection.renameCollection(),则以 --oplog 开头的 mongodump 会失败。有关更多信息,请参阅 mongodump.--oplog

在集合对象上调用 db.collection.renameCollection() 方法。例如:

db.rrecord.renameCollection("record")

该操作会将 rrecord 集合重命名为 record。如果目标名称(即 record)是现有集合的名称,则该操作会失败。

后退

db.collection.remove

来年

db.collection.replaceOne

在此页面上