不,您可以使用"convertToCapped"命令将无上限的集合转换为上限集合,但是没有办法转向其他方式.
您唯一的选择是将集合克隆到无上限的集合并重命名,这显然涉及停机时间.
不幸的是,这里唯一的选择是复制集合,删除旧集合并重命名新集合:
$> db.collection_name.copyTo('collection_name2')
$> db.collection_name.isCapped()
true
$> db.collection_name.drop()
$> db.collection_name2.renameCollection('collection_name')
$> db.collection_name.isCapped()
false
Run Code Online (Sandbox Code Playgroud)