Mongodb mongorestore使用-drop选项删除集合

Mongodb mongorestore使用-drop选项删除集合,mongodb,mongorestore,Mongodb,Mongorestore,假设我有一个包含两个集合collA和collB的数据库testdb,并尝试从转储中仅恢复collB 在mongorestore中使用--drop选项是否会从testdb中删除现有集合(collA和collB),即使转储中只有collB 我正在使用MongoDB 2.6.5是的。该选项将删除目标数据库中的所有集合,并将其替换为从转储恢复的集合。事实上,根据官方文档,否: --下降 从转储的备份还原集合之前,请从目标数据库中删除集合--drop不会删除不在备份中的集合。使用-drop时,如果集合同时

假设我有一个包含两个集合collA和collB的数据库testdb,并尝试从转储中仅恢复collB

在mongorestore中使用--drop选项是否会从testdb中删除现有集合(collA和collB),即使转储中只有collB


我正在使用MongoDB 2.6.5是的。该选项将删除目标数据库中的所有集合,并将其替换为从转储恢复的集合。

事实上,根据官方文档,否:

--下降 从转储的备份还原集合之前,请从目标数据库中删除集合--drop不会删除不在备份中的集合。

使用-drop时,如果集合同时存在于数据库和备份集合中,mongorestore将删除这些集合。它不会删除备份集合中不存在的集合


因此,在您的示例中,collB将被删除并恢复,而collA保持不变。

我刚刚尝试进行了一个小测试,发现其中一个集合如果不是同一数据库中已恢复转储的一部分,则不会被删除?你确定吗?如果是这样,那就是一个bug。有文档记录了在还原之前删除目标数据库中的每个集合。是的,我确信它在还原之前没有使用--drop选项删除所有集合文档中说--drop不会删除不在备份中的集合。”