暂无图片
Mongodump备份占用过多内存
我来答
分享
wish🍀
2019-10-14
Mongodump备份占用过多内存

使用mongodump备份,但是内存占用过多,备份完成后,内存不会释放,进而导致内存不足。请问为什么会这样,有没有办法解决,多谢了。

我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
章芋文

mongodump备份需要将mongo里面所有数据读到内存,所以会占用大量内存,官方文档也说了,如果mongo的数据量大于内存大小,建议采用其他方式备份或者单独部署mongodump,否则会出现out of memory,影响mongo自己的运行。

至于备份完成后内存不释放,可以看下进程是否还在运行?

暂无图片 评论
暂无图片 有用 0
打赏 0
wish🍀

备份完成后,mogodump进程结束了。但是内存和swap都满了,而且不释放,只能通过重启解决。有没有其他好的备份方式呢?

暂无图片 评论
暂无图片 有用 0
打赏 0
一笑而起

推荐用nosqlbooster for mongo工具进行备份。


暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
mongodb主要可用于哪些项目?
回答 1
已采纳
应该说场景。日志用的最多。有的也有部分社交场景。还有网盘这种存储连接的。主要是json数据类型多的,用它合适。
请问下装mongodb 的时候启动服务报错是什么原因?
回答 1
你好:我没有MongoDB使用经验,只是从图片末端的的路径信息上看,路径不存在,请再排查下相应路径是否准备完好。
mongodb到kafka,什么组件比较好用?
回答 4
已采纳
Debezium(DBZ)了解一下,实测好用,支持多种异构数据库同步到kafkahttps://debezium.io/
请问 可以把mongod的从节点激活成主节点吗?现在另外2个节点拉不起来
回答 1
去掉副本集单独启动就可以
mongo占用内存7个G,但是数据量只有1个G,索引120m
回答 1
内存参数设置太大了
启动mongod进程报错
回答 2
已采纳
看看日志吧,可能是之前使用root登录了,相关文件权限变了
mongdb同步到mysql怎么做?有什么推荐的学习资料么?
回答 1
对于这方面没什么好的方式。直接把mongodb执行语句分解,用语句方式刷到mysql上面。mongob里oplog,changestream都可以捕捉到变化。或尝试ETL工具kettle也可以
mongodb 分组统计然后insert into其他表,怎么实现呢?
回答 1
已采纳
db.orders.find().forEach(function(i){i.tsimportednewDate();db.orders1.insert(i);});
mongodb创建单个字段全文索引后,业务数据插入很慢
回答 5
模糊查询本身就存在性能问题。因为索引的内容不在内存中,索引需要不停的读取文件,加载到内存,导致io高。现有情况下最好的办法是内存加大,把数据全部放在内存。或则模糊查询更改逻辑。底层硬盘必须是ssd
生产上mongodb部署一般是单机还是集群?
回答 2
已采纳
单机环境只适合学习和开发测试,在实际的生产环境中,MongoDB基本是以集群的方式工作的。MongoDB有三种集群部署模式,分别为:主从复制(MasterSlaver)副本集(ReplicaSet)分