简要说一下MongoDB的备份方式:
1. mogodump / mongorestore
这2命令将mongodb的数据dump为BSON格式,需要的时候可以恢复。
这种方式作为小的数据库还适用。但如果是sharding或者几百G数据以上的话
就几乎不可用了。因为BSON及其占用空间。
2. Slave Replication
这是最适合和可靠的,适合生产环境。MongoDb支持master+多个slave。因此可以很方便的起一个slave来进行备份。
但是需要注意的是如果数据量很大的话,如果是新建的slave,速度又没有保证的话,一定要调高 oplogSize 的大小,对于一个300G的数据库,
可以调到60G以上。这样避免同步到中间出现oplogSize不足等异常。
3. 关于增量热备份
对于某些热衷单独文件备份的同志,也可以考虑使用“增量热”备份的方式作为最后的屏障。
做法就是,最开始将某个slave暂时shutdown,然后将数据库文件复制到另一个目录作为增量备份的起点。
每次备份的时候,在这个目录上起一个slave, 使用–fastsync参数,同步完毕即可tar这个目录就可以了。
这种方式的一个缺点就是如果备份周期的过长的话,空间浪费会非常大,尤其是频繁删除的情况下,
目前1.6以前的版本对于删除的空间回收机制有bug。这个问题应该在1.6版本发布时候解决。
要想回收这些空间需要repairDatabase,速度比较慢,不如直接从头clone一个新的db了。(其实Repair的过程也就是先clone然后copy回来)。
综上所述, 最靠谱和安全的备份方式就是用mongodb自身的同步复制机制.
最经典也最小的生产环境是:
1 master + 2 slaves
[原文] http://nightsailer.com/2010/05/04/735.html
分享到:
相关推荐
mongodb 备份恢复工具mongodb 备份恢复工具mongodb 备份恢复工具mongodb 备份恢复工具mongodb 备份恢复工具mongodb 备份恢复工具mongodb 备份恢复工具mongodb 备份恢复工具mongodb 备份恢复工具mongodb 备份恢复工具...
经过研究的mongodb的备份命令,总结就这几个命令,绝对实用可行。
mongodb备份数据库,达到4.3M的数据,也就是四千三百万条数据,不大不小,正好可以下载下来测试mongo用
mongodb的分片备份 复制集的备份和配置的备份
mongodb备份与恢复.doc
数据库备份脚本 进入编辑任务界面:crontab -e 配置定时任务:30 1 * * * /opt/mongobk.sh 每天一点30分备份数据库 基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1~59 每分钟用*或者 *...
《Redis、MongoDB、HBase大咖直播大讲堂》技术直播峰会
mongoDB LINUX增量备份
linux mongoDB数据库备份脚本
Mongodb备份数据库的shell脚本文件, 经过在实际项目中测试使用过.
一份完整的mongodb的备份集搭建文档,按照上面步奏就可以完成
MongoDB备份与恢复.pdf 学习资料 复习资料 教学资源
MongoDB自动备份脚本,自动删除几天前的备份,带全部注释
MongoDB备份与恢复实例.pdf 学习资料 复习资料 教学资源
mongodb备份恢复 mongodump mongorestore
Mongodb备份脚本(mongodump)
实现mongodb自定义备份,可实现自定义库、自定义集合、自定义备份周期,使用方便,脚本易维护!
主要给大家介绍了关于MongoDB实现备份压缩的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
mongodb和mysql的expect方式的异地备份 mysql数据的异地备份: (1)在mysql服务器上安装.exp文件运行需要的运行环境.并检测 #yum install expect