首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mongorestore命令替换现有记录?

mongorestore命令替换现有记录?
EN

Stack Overflow用户
提问于 2014-12-27 11:46:55
回答 4查看 37.9K关注 0票数 46

是否有一种方法可以让mongorestore替换数据库中的记录,而不是跳过数据库中的记录,这是默认行为?

我目前正在使用最新的2.4.x版本的mongodb。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-12-27 15:01:17

不是的。来自蒙古恢复

如果还原到现有数据库,mongo还原将只插入现有数据库,而不会执行任何类型的更新。如果现有文档在目标数据库和集合中具有相同的值_id字段,mongorestore将不会覆盖这些文档。

如果希望用mongorestore完全覆盖数据库或数据库中的集合,请删除数据库或集合(如vikas的答案所指出的检查 --下降 参数)。如果您想要替换某些文档或合并重复的文档,那么您需要编写自己的脚本来进行恢复,并自己实现更复杂的逻辑。

票数 44
EN

Stack Overflow用户

发布于 2015-11-26 06:29:15

你可以用参数 of mongorestore

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

票数 100
EN

Stack Overflow用户

发布于 2015-09-14 23:51:50

如果您有一个小集合,您可以始终:

  1. 把你的目标藏在别的地方
  2. 删除目标集合
  3. 恢复原始转储文件
  4. Mongo还原步骤1中生成的转储文件

这会将优先级切换到转储文件,而不是DB中的_ids。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27666908

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档