2019独角兽企业重金招聘Python工程师标准>>>

MongoDB备份方法

On this page

  • Back Up with MongoDB Cloud Manager or Ops Manager
  • Back Up by Copying Underlying Data Files
  • Back Up with mongodump
  • Additional Resources

生产环境部署了MongoDB,为了防止数据丢失,需要有获取和恢复备份的策略。

使用MongoDB Cloud Manager或者Ops Manager备份

MongoDB Cloud Manager是MongoDB的为实现MongoDB备份监控和自动化的服务。它可以从图形用户界面备份和恢复MongoDB的副本集和分片集群。

MongoDB Cloud Manager

MongoDB Cloud Manager 支持备份和恢复MongoDB部署。

MongoDB Cloud Manager通过读取oplog data不间断备份MongoDB的副本集和分片集群。

TIP

分片集群快照使用其他备份方法很难获取到。

要使用MongoDB Cloud Manager,注册MongoDB Cloud Manager,获取文档,参照MongoDB Cloud Manager documentation.

Ops Manager【不翻译】

With Ops Manager, MongoDB subscribers can install and run the same core software that powersMongoDB Cloud Manager on their own infrastructure. Ops Manager is an on-premise solution that has similar functionality to MongoDB Cloud Manager and is available with Enterprise Advanced subscriptions.

For more information about Ops Manager, see the MongoDB Enterprise Advanced page and the Ops Manager Manual.

通过拷贝数据文件进行备份

使用文件系统快照进行备份

可以通过拷贝MongoDB的文件系统进行备份。

如果MongoDB存储数据文件使用的卷组支持实时【point-in-time】的快照功能,你可以试用这些快照及时创建MongoDB系统的备份。文件系统快照功能是操作系统卷组管理的功能,并不只针对于MongoDB。使用文件系统快照,操作系统制作卷组快照,作为文件备份的基准【baseline】。此快照机理依赖底层存储系统。例如,linux系统中,LVM可以创建快照。类似,Amazon的EBS存储系统也支持快照。

为了获取正确快照,必须要开启日志功能,且日志存放的卷组和其他MongoDB数据文件所在卷组一致。若不开启日志(journaling)无法保证快照的一致和有效性。

To get a consistent snapshot of a sharded cluster, you must disable the balancer and capture a snapshot from every shard as well as a config server at approximately the same moment in time.

For more information, see the Back Up and Restore with Filesystem Snapshots and Back Up a Sharded Cluster with File System Snapshots for complete instructions on using LVM to create snapshots. Also seeBack up and Restore Processes for MongoDB on Amazon EC2.

为了获取分片集群的一致性快照,必须禁用平衡器,且在每个分片上获取到的快照时间和在config server上的快照时间几乎一致。

使用CP或者rsync备份

如果存储系统不支持快照,你可以直接使用cp或者rsync,或者类似的工具。因为拷贝多个文件不是院子操作,操作之前必须停止写操作。否则拷贝是无效操作。

拷贝底层文件不支持副本集的及时恢复,且不易管理大型分片集群。另外,这些备份会比实际的数据大,因为包含了索引和底层存储填充以及碎片。相比较,mongodump备份的数据要小一些。

使用mongodump备份

mongodump从MongDB数据库里面读取数据,且创建高准确度的BSON文件。mongodump和mongorestore是简单有效的备份和恢复小型MongoDB的工具,但不是获取大型系统备份的理想工具。

mongodump和mongorestore操作运行的mongod进程,也可以直接操作底层数据文件。默认,mongodump不获取local database的数据内容。

mongodump只获取数据库的documents。备份的数据空间效率很高,但mongorestore和mongod必须在恢复数据后重建indexes。

连接到MongoDB实例,mongodump会降低mongod的性能。如果数据量很大,超过了系统内存。查询会将工作集溢出内存,导致page faults。

在使用mongodump获取结果时,可以继续修改数据。对于副本集,mongodump提供了--oplog参数,来包含输出的oplog条目。这会使得mongorestore重演oplog。备份使用了--oplog参数,恢复时需要使用--oplogReplay参数。

However, for replica sets, consider MongoDB Cloud Manager or Ops Manager.

See Back Up and Restore with MongoDB Tools and Back Up a Sharded Cluster with Database Dumps for more information.

Additional Resources

  • Backup and it’s Role in Disaster Recovery White Paper
  • Backup vs. Replication: Why Do You Need Both?
  • MongoDB Production Readiness Consulting Package

转载于:https://my.oschina.net/u/259976/blog/752921

【MongoDB】MongoDB备份方法相关推荐

  1. mongodb 备份压缩_MongoDB 备份方法

    参考官方文档: https://docs.mongodb.com/manual/core/backups/ 使用文件系统快照进行备份和重建 本文档介绍了使用系统级工具(如LVM或存储设备)创建Mong ...

  2. MongoDB数据备份还原,及docker中MongoDB备份还原

    一: MongoDB数据备份 在Mongodb中我们使用mongodump命令来备份MongoDB数据.该命令可以导出所有数据到指定目录中. mongodump命令可以通过参数指定导出的数据量级转存的 ...

  3. Mongodb 物理备份和恢复 —— 筑梦之路

    物理备份是指备份 MongoDB 数据目录,包括所有的数据文件.日志文件和配置文件.这种备份方法可以保留 MongoDB 数据库的完整性和一致性,也可以加快备份和恢复的速度.以下是备份和恢复 Mong ...

  4. 练习 MongoDB 操作 —— 备份篇(三)

    2019独角兽企业重金招聘Python工程师标准>>> mongodb数据备份和还原主要分为二种, 一种是针对于库的mongodump和mongorestore, 一种是针对库中表的 ...

  5. Linux系统mongdb还原数据库,linux下mongodb数据库备份与还原

    MongoDb数据库备份还原 数据库迁移,可视化工具NoSQLBooster for MongoDB 付费版才具有数据导入功能.代价过高,索性采起命令行web 数据备份 备份命令mongodb mon ...

  6. spring mysql mongdb_Spring Boot中使用MongoDB数据库的方法

    MongoDB数据库简介 简介 MongoDB是一个高性能,开源,无模式的,基于分布式文件存储的文档型数据库,由C++语言编写,其名称来源取自"humongous",是一种开源的文 ...

  7. python实现mongodb的备份与导入

    python实现mongodb的备份与导入 背景: 192.168.122.1    python 192.168.122.11  mongodb Python备份mongo 代码: # -*- co ...

  8. Mongodb 定时备份和恢复

    2019独角兽企业重金招聘Python工程师标准>>> 定时对数据库进行备份可以有效地保护数据 mongodump -h 127.0.0.1 --port 2777 -u ruiyi ...

  9. MongoDB自动备份全过程实录

    前段时间,个人小程序 IT牧场 因服务器磁盘空间被占满,导致MongoDB挂了.清理了一些无用的数据后,重启MongoDB,竟然无法启动,一番折腾(20分钟)后,总算修复了.这让我意识到:虽然是个人小 ...

最新文章

  1. 面试:你知道 Java 中的回调机制吗?
  2. 神经网络迭代次数与Lambert定律
  3. 给vs2010安装上cocos2d-x的模版
  4. 面试必会系列 - 1.3 Java 多线程
  5. Windows的命令行窗口运行Python时,如何清屏?
  6. 使用JDBC处理Oracle大数据
  7. 走进javascript——解开switch之谜
  8. oracle fileperset,RMAN具体使用方法
  9. win10备份为wim_在PE中使用CGI进行系统备份和还原
  10. android brvah 分组,Android开源框架BRVAH由来篇
  11. 周易六爻起卦排盘微信小程序
  12. 许远东受邀上海管理科技论坛做《LTD数字化经营方法论》分享
  13. day3.python基础中下
  14. win10怎么装c语言,WIN10上安装编写C++ C语言的软件教程
  15. 三色球问题python_面试题-三色球问题
  16. 电瓶车充电桩收费平台解决小区充电难的问题
  17. android x86 uc,UC浏览器X86版下载|UC浏览器X86版老版 V10.8.5 安卓版 下载_当下软件园_软件下载...
  18. 2022年全球及中国血清降钙素原市场专项调研与竞争调查分析报告
  19. Python爬虫:老兵不死,用数据纪念2019男篮世界杯
  20. 解决JS双击事件dblclick触发时,同时会执行click事件中的语句

热门文章

  1. 全球首个AI宇宙模拟器不仅有6亿光年宽度,还“自行”跑出了暗物质
  2. 5G、物联网和AI结合的究极形态是什么?一文看尽智能连接在5大领域的12个典型案例!...
  3. 互联网让我们变笨了吗:过去10年关于大脑的11个有趣发现
  4. 未来一年最有可能成为独角兽的29家美国初创公司
  5. AI与基因科学的对话:从“人工智能”到“动物智能”
  6. 中国数字化进程比发达国家快,小程序让我感到自豪 | IT领袖峰会
  7. “计算机艺术之父”、现代计算机技术先驱查理斯·苏黎去世,享年99岁
  8. 不讲码德!坏味道偷袭我这个老码农
  9. Go switch语句
  10. mongoDB 文档概念