Undo convertToCapped to a collection

2019-02-17 09:02发布

问题:

In MongoDB you can convert a collection into a capped collection with the command convertToCapped, but is there a way to revert this change so a capped collection goes back to normal?

回答1:

It's seems there is only one way to convert from capped collection to normal - just simple copy objects to normal collection and remove original capped collection.


db.createCollection("norm_coll");
var cur = db.cap_col.find()
while (cur.hasNext()) {obj = cur.next(); db.norm_coll.insert(obj);}



回答2:

same as above without using script.

    db.collection.copyTo("collection_temp")
    db.collection.drop()
    db.collection_temp.renameCollection("collection")


回答3:

I think there is a way! I'm not sure if this is bullet-proof, but I tried:

db.num_coll.convertToCapped(new_size)

and since then it is working.



标签: mongodb nosql