翻译自 http://docs.mongodb.org/manual/core/backups/

有以下几种方法来备份MongoDB群集:

  • 通过复制底层数据文件来备份
  • 通过mongodump来备份
  • 通过MMS (MMS:MongoDB Management Service)云备份
  • 通过MMS On Prem 备份软件备份

1. 通过复制底层数据文件来备份

  如果存储设备支持按时间点产生快照(snapshot),你可以用这些快照来创建mongodb的备份。比如Amazon的EBS存储系统支持EC2的快照。在Linux上LVM Manager能够产生快照。

  如果Mongodb正在运行,要得到一个正确的快照的话,MongoDB必须打开日志功能,并且日志文件和mongoDB的数据文件再同一个逻辑卷(logical volume)上。如果不打开日志(journaling)功能,则无法保证得到的快照里的数据的一致性。

  对于分片系统(sharded system), 你必须关闭balancer并且在同一时间获取每个shard和每个config server的snapshot。

  你也可以用cp, rsync或者其它工具去拷贝文件。但是拷贝多个文件不是一个原子型操作,你必须在拷贝之前停止所有写操作,否则的话可能会使拷贝的数据处于不一致的状态。

2. mongodump

  通过拷贝底层文件不支持复集(replica set)的时点恢复(point in time recovery),并且很难去管理大型的分片群集。另外,这些拷贝很大,因为它们包含了索引以及底层的Padding和碎片。而mongodump则能生成更小的备份。

  mongodump工具从mongodb数据库中读取数据并生成bson文件。mongorestore则能够将这些数据恢复到mongodb数据库。mongodump对小型的数据库是非常有效的工具,对大型的数据库系统则不是很理想。

  mongodump和mongorestore能够在mongod进程运行的时候操作,并且能够操作底层的数据文件。

  mongodump不会备份索引文件,所以恢复数据库后需要重建index。

用mongodump和mongorestore的具体操作详见 http://docs.mongodb.org/manual/tutorial/backup-with-mongodump/

MongoDB 备份方法的更多相关文章

  1. mongodb 备份

    本篇文章来自于阿里云技术专家郑涔(明俨)在2018年<Redis.MongoDB.HBase大咖直播大讲堂>技术直播峰会中的分享,该分享整体由四个部分构成: 1.MongoDB备份恢复 2 ...

  2. mongodb 备份 还原 导出 导入

    张映 发表于 2013-12-03 分类目录: nosql 标签:mongodb, 备份, 导入, 导出, 还原 mongodb数据备份和还原主要分为二种,一种是针对于库的mongodump和mong ...

  3. Oracle数据库的备份方法

    1.引言 Oracle数据库的备份方法很多,无论使用那种备份方法,备份的目的都是为了在出现故障后能够以尽可能小的时间和代价恢复系统.比如使用export实用程序导出数据库对象.使用Oracle备份数据 ...

  4. MongoDB 备份(mongodump)恢复(mongorerstore) 导出 (Mongoexport) 导入( Mongoimport)

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

  5. postfix 邮件备份方法

    postfix 邮件备份方法: postfix的bcc(密送)功能可以根据条件,将所有经过postfix队列的邮件根据规则密送到指定的邮箱. postfix带有三个bcc参数: ①.always_bc ...

  6. Linux服务器的常用备份方法

    系统备份是系统管理工作中十分重要的一个环切,本文详细介绍了各种Linux系统的备份方法,相信对大家的日常管理工作有所帮助. 备份是一项重要的工作,但是很多人没有去做.一旦由于使用不当造成数据丢失,备份 ...

  7. 最简便的MySql数据库备份方法

    http://www.kankanews.com/ICkengine/archives/194.shtml 使用MYSQL进行数据库备份,又很正规的数据库备份方法,同其他的数据库服务器有相同的概念,但 ...

  8. 7.2 Database Backup Methods 数据备份方法:

    7.2 Database Backup Methods 数据备份方法: 本节总结了一些常用的备份方法: 使用MySQL Enterprise Backup 进行Hot Backup MySQL Ent ...

  9. SQL Server数据库备份方法

    数据库备份,是在数据丢失的情况下,能及时恢复重要数据,防止数据丢失的一种重要手段.一个合理的数据库备份方案,应该能够在数据丢失时,有效地恢复重要数据,同时需要考虑技术实现难度和有效地利用资源. 数据库 ...

随机推荐

  1. sql查询行转列

    昨天下午碰到一个需求,一个大约30万行的表,其中有很多重复行,在这些行中某些字段值是不重复的. 比如有ID,NAME,CONTRACT_id,SALES,PRODUCT等,除了PRODUCT字段,其余 ...

  2. 3.5html学习笔记之框模型,盒子模型

    块元素:block 两个相邻的元素外边距,两者之间取最大. 浮动(定位机制针对框来说): 1.position:absolute,relative,fixed 1)relative:在原来的位置上进行 ...

  3. VSS错误:The Sourcesafe Web service cannot be accessed at the specified address

    第一次使用正常,今天再次打开vs项目的时候就突然连不上vss的服务器了.       手动修改连接的时候会让输入一个address(http的) (一般正常的连接会是浏览的方式找到服务器文件的地址的) ...

  4. IOS UItableView 滚动到底 触发事件

    开发过程中,在使用UItableView 总会遇到加载更多的问题,到底是手势响应瀑布流的方法好? 还是添加一个底端cell点击触发加载更多好?我也想有自己的判断.但是我们老板总说了算,没办法,谁叫我给 ...

  5. (三)u-boot2013.01.01 for TQ210:《mkconfig分析》

    /* 和分析makefile一样,分析mkconfig同样注重句法分析 */ ############################################################# ...

  6. ORA-01034: 、ORA-01078: 和 LRM-00109: 的解决方法

    环境:Linux 5.4 Oracle 11.2.0.3 在Linux上连接Oracle时遇到报错: SQL> show parameter sgaORA-01034: ORACLE not a ...

  7. Kinect For Windows V2开发日志八:侦测、追踪人体骨架

    简介 Kinect一个很强大的功能就是它可以侦测到人体的骨骼信息并追踪,在Kinect V2的SDK 2.0中,它最多可以同时获取到6个人.每个人25个关节点的信息,并且通过深度摄像头,可以同时获取到 ...

  8. hdu-5686 Problem B(斐波那契数列)

    题目链接: Problem B Time Limit: 2000/1000 MS (Java/Others)     Memory Limit: 65536/65536 K (Java/Others) ...

  9. Part 45 to 47 Talking about Enums in C#

    Part 45   C# Tutorial   Why Enums Enums are strongly typed constants. If a program uses set of integ ...

  10. DWZ (JUI) 教程 国际化问题(多语言/语言切换)

    DWZ 国际化也是比较简单的,网站的内容国际化和常规的项目国际化是一样的,不要做出特殊的调整. DWZ 自身框架的国际化,比如 翻页的上一页下一页等信息.这些信息都是在dwz.frag.xml 文件当 ...