数据备份及恢复(mongodump/mongorestore)
说明
1.mongodump创建高保真的BSON文件,mongorestore可以用其恢复数据库。对于小型数据库的备份和恢复,这两个工具非常简单和高效,但对于大型数据库的备份并不理想。
2.mongodump/mongorestore可以直接对正在运行的mongodb执行操作。
3.默认情况下,mongodump不会捕获本地数据库的内容,而只是捕获其中的document,所以占用空间较小(我试过了,占用空间也不少,原空间占用17G,备份完了37G)。不过,这也导致mongorestore恢复数据时,需要重建索引。
4.mongodump执行过程中会影响mongodb的性能。另外,即使执行结束后的一段时间性能依然会受到影响,因为读取冷数据时,会把热数据从缓存中挤出去了。
5.如果数据大于系统内存,那么查询将会导致内存溢出,从而导致page faults。不过我测试时,待备份数据17G,机器内存8G,并没有出现错误。
6.如果输出文件夹中有文件,mongodump会覆盖。
--oplog
mongodump使用--oplog选项,捕获备份过程中的修改,以保障备份数据的一致性。但这个需要另外配置,涉及复制功能。本文档未使用此选项。相对应的,如果备份时使用--oplog,那么恢复数据时使用--oplogReplay选项。
--host/--port
可以使用--host/--port指定要备份的实例。用这两个选项可以进行远程备份。
--db/--collection
指定备份的数据和集合。
--out
mongodump使用此选项,指定备份的数据写到哪个路径。如果不指定,默认写在当前工作目录的dump/路径下。
--objcheck
插入数据时,检查完整性。
--drop
在恢复数据之前,删除之前的集合。
操作步骤
1.执行备份命令,将备份数据写入到/home/dump/文件夹下。如下各命令使用的用户“root”是超级用户,其角色为内置角色root。
mongodump --username "root" --password "xxxxxx" --out /home/dump/
如果出现如下内容,则表示备份完成:
备份的数据包含288万多条document,数据库大小16G多,耗时14分钟左右。
2.执行恢复命令。
mongorestore --username "root" --password "xxxxxx" /home/dump/
如果出现如下内容,则表示恢复完成:
数据恢复总共耗时17分钟左右。其中数据恢复完成后,重建索引花费了5分钟的时间。
数据备份及恢复(mongodump/mongorestore)的更多相关文章
- redis入门(15)redis的数据备份和恢复
redis入门(15)redis的数据备份和恢复
- Salesforce 数据备份和恢复小知识
数据备份的类型 在Salesforce中可以使用多种API进行数据备份,它们是: REST API SOAP API Buik API Metadata API 数据备份有三种选择: 完全备份(Ful ...
- innobackupex不停库的数据备份并恢复到别的服务器上【转】
1.innobackupex原理: 备份原理 1).首先会开启一个后台检测进程,实时检测myql redo的变化,一旦发现redo中有新日志写入,立即将日志记入后台日志文件xtrabackup_log ...
- InfluxDB数据备份和恢复方法,支持本地和远程备份
本文属于<InfluxDB系列教程>文章系列,该系列共包括以下 17 部分: InfluxDB学习之InfluxDB的基本概念 InfluxDB学习之InfluxDB的基本操作 Influ ...
- tableau server 数据备份及恢复
tableau server 数据备份及恢复 一.数据备份 1> win+r,进入到dos命令行模式 2> 进入到tableau server的bin路径下 cd C:\Program F ...
- MongoDB 数据备份和恢复 --- MongoDB基础用法(七)
数据备份 在Mongodb中我们使用mongodump命令来备份MongoDB数据.该命令可以导出所有数据到指定目录中. mongodump命令可以通过参数指定导出的数据量级转存的服务器. mongo ...
- NoSQL 数据库案例实战 -- MongoDB数据备份、恢复
MySQL数据迁移到MongoDB数据库中 前言 一.数据备份 二.数据恢复 前言 本环境是基于 Centos 7.8 系统构建mongodb-enterprise-4.2.8学习环境具体构建,请参考 ...
- MySQL数据库的数据备份和恢复(导入和导出)命令操作语法【转】
不管是Oracle数据库还是SQL Server数据库,每个数据库都有自己的一套数据备份和恢复的方法,MySQL数据库也不例外.MySQL数据库备份和恢复用到了两个命令,分别是“mysqldump”和 ...
- HBase数据备份及恢复(导入导出)的常用方法
一.说明 随着HBase在重要的商业系统中应用的大量增加,许多企业需要通过对它们的HBase集群建立健壮的备份和故障恢复机制来保证它们的企业(数据)资产.备份Hbase时的难点是其待备份的数据集可能非 ...
随机推荐
- Spring AOP 详解 【转】
此前对于AOP的使用仅限于声明式事务,除此之外在实际开发中也没有遇到过与之相关的问题.最近项目中遇到了以下几点需求,仔细思考之后,觉得采用AOP 来解决.一方面是为了以更加灵活的方式来解决问题,另 ...
- Linux学习系列——零基础开始
第一部分 Linux基础命令 1.查看系统信息命令 2.Linux内核版本 3.修改环境变量
- linux 命令学习-网络相关配置
网络配置相关 网卡配置文件:etc/sysconfig/network-scripts/ifcfg-eth0 DNS 配置文件 etc/resolv.conf 主机配置文件 etc/sysconfig ...
- Transaction And Lock--由外键导致的死锁
死锁发生情况:1. 存在表A和表B,表A的主键是表B的外键2.事务A在表A上申请到X锁以修改表A中数据和删除表A中的数据,然后需要检查表B中的数据是否满足外键约束,从而需要Range锁来锁住表B3.事 ...
- NLP常用开源/免费工具
一些常见的NLP任务的开源/免费工具, *Computational Linguistics ToolboxCLT http://complingone.georgetown.edu/~linguis ...
- html5 表格标签 table tr td
最重要的三个 <table> 表格声明标签 属性: boarder 边框粗细 style 可配合css 使用 <tr> 行标签 table row ...
- SDOI2010粟粟的书架
题目传送:https://www.luogu.org/problemnew/show/P2468 这是一个二合一的题目,前50% \(n!=1\)的分数中,我们考虑用动态规划来做. 设\(sum[i] ...
- nginx location 与 rewrite详解 (转)
点我
- leetcode 16. 3Sum Closest JAVA
题目: 给定一个包括n个整数的数组nums和一个目标值target.找到nums中的三个整数,使得他们之和与target最为接近.返回三个整数之和,假定每组输入只存在唯一答案 解题思路: 将nums数 ...
- Tiled结合Unity实现瓦片地图——Tiled2Unity篇
本系列文章由Aimar_Johnny编写,欢迎转载,转载请标明出处,谢谢. http://blog.csdn.net/lzhq1982/article/details/75356478 前段时间应公司 ...