如何将MongoDB的固定集合转换为非固定集合?

3

由于一些具体业务需求,我们将数据存储到MongoDB的固定大小集合(capped collection)中,但现在完整需求发生变化,我们希望保留该集合中的所有记录。

我能找到“convertToCapped”命令,但没有找到执行相反操作的命令。

如何将其转换回非固定大小集合(non-capped collection)?

1个回答

6
您可以将其复制
use admin
db.runCommand( { renameCollection: "yourdb.yourcollection", to: "yourdb.oldcapped" } )
use yourdb
db.oldcapped.copyTo("yourcollection")

然后在不受限制的yourcollection中,确保所需的索引并创建用户。运行测试,如果结果符合预期,就删除oldcapped。毋庸置疑,这应该在维护窗口内完成。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接