为什么80%的码农都做不了架构师?>>>   

mongodb提供了两个命令来备份(mongodump )和恢复(mongorestore )数据库。

1.备份(mongodump )

用法 :

[root@web3 3]# mongodump --help
options:
--help                   produce help message
-v [ --verbose ]         be more verbose (include multiple times for more
verbosity e.g. -vvvvv)
-h [ --host ] arg        mongo host to connect to ("left,right" for pairs)
-d [ --db ] arg          database to use
-c [ --collection ] arg  collection to use (some commands)
-u [ --username ] arg    username
-p [ --password ] arg    password
--dbpath arg             directly access mongod data files in the given path,
instead of connecting to a mongod instance - needs
to lock the data directory, so cannot be used if a
mongod is currently accessing the same path
--directoryperdb         if dbpath specified, each db is in a separate
directory
-o [ --out ] arg (=dump) output directory

例子:

[root@web3 ~]# mongodump -h 192.168.1.103 -d citys -o /backup/mongobak/3
connected to: 192.168.1.103
DATABASE: citys  to     /backup/mongobak/3/citys
citys.building to /backup/mongobak/3/citys/building.bson
13650 objects
citys.system.indexes to /backup/mongobak/3/citys/system.indexes.bson
1 objects

备份出来的数据是二进制的,已经经过压缩。比实际数据库要小很多,我的数据库显示占用了260多M,备份后只有2M。

2.恢复(mongorestore )

用法:

[root@web3 3]# mongorestore --help
usage: mongorestore [options] [directory or filename to restore from]
options:
--help                  produce help message
-v [ --verbose ]        be more verbose (include multiple times for more
verbosity e.g. -vvvvv)
-h [ --host ] arg       mongo host to connect to ("left,right" for pairs)
-d [ --db ] arg         database to use
-c [ --collection ] arg collection to use (some commands)
-u [ --username ] arg   username
-p [ --password ] arg   password
--dbpath arg            directly access mongod data files in the given path,
instead of connecting to a mongod instance - needs to
lock the data directory, so cannot be used if a
mongod is currently accessing the same path
--directoryperdb        if dbpath specified, each db is in a separate
directory
--drop                  drop each collection before import
--objcheck              validate object before inserting--drop参数可以在导入之前把collection先删掉。

例子:

[root@web3 3]# mongorestore -h 127.0.0.1 --directoryperdb /backup/mongobak/3/
connected to: 127.0.0.1
/backup/mongobak/3/citys/building.bson
going into namespace [citys.building]
13667 objects
/backup/mongobak/3/citys/system.indexes.bson
going into namespace [citys.system.indexes]
1 objects

另外mongodb还提供了mongoexport 和 mongoimport 这两个命令来导出或导入数据,导出的数据是json格式的。也可以实现备份和恢复的功能。

例:

mongoexport -d mixi_top_city_prod -c building_45 -q '{ "uid" : "10832545" }' > mongo_10832545.bsonmongoimport -d mixi_top_city -c building_45 --file mongo_10832545.bson

转载于:https://my.oschina.net/flowf/blog/52540

mongodb的备份与恢复相关推荐

  1. mongodb数据备份与恢复

    前言 为确保数据安全性,mongodb数据备份在实际生产环境下必不可少,一旦生产环境下的mongo所在服务器出现诸如掉电.宕机.甚至是一些不可预测的灾难情况,数据备份就显得尤为重要了,又备份,就有数据 ...

  2. MongoDB数据库备份与恢复

    //整库备份到指定目录 mongodump -h dbhost -d dbname -o dbdirectory mongodump -h 192.168.0.1 -d mydatabase -o D ...

  3. Ubuntu 16.04 MongoDB数据库备份与恢复

    1.切换到/usr/bin目录下 cd /usr/bin 2.备份数据库 mongodump -h ip:port -d 库名 -o 备份目录 例如:mongodump -h 127.0.0.1:27 ...

  4. MongoDB 教程六: MongoDB管理:数据导入导出,数据备份恢复及用户安全与认证

    视频地址:MongoDB 教程六: MongoDB管理:数据导入导出,数据备份恢复及用户安全与认证 MongoDB数据库备份与恢复 一.备份 先介绍下命令语法: mongodump -h dbhost ...

  5. mongodb 字符串转bson_大数据存储技术选型(六)--Mongodb专题介绍

    之前我曾有过一次mongodb的介绍,但那是年少无知,对mongo认识得不够充分,所以当时那篇专题介绍只是介绍了一个大概的轮廓就草草敷衍了事了.对此我做了深刻的反省与自我批评.接下来,今天就mongo ...

  6. Linux系统mongdb还原数据库,linux - mongodb备份mongodump、恢复mongorestore

    前言 服务器都会涉及到服务迁移或者备份恢复的时候,今天简单总结mongodb的备份与恢复. mongodump和mongorestore --备份单个表 mongodump -u superuser ...

  7. docker、K8S、k3s、rancher

    第一:docker 基础使用 docker 竞品 最新调查:OpenStack.Docker.KVM被评为最火的云开源项目. Docker替代品,Containerd Docker与KVM之间的区别( ...

  8. 六万+字带你了解数据库---mysql--JDBC-Redis--MongoDB

    路漫漫其修远兮,读者朋友们加油 MYSQL 1 常见的数据库 数据库分两大类,一类是 关系型数据库.另一类叫做 非关系型数据库. 关系型数据库: MySQL,Oracle,PostgreSQL,SQL ...

  9. 《Linux运维篇:Linux系统运维指南》

    一.Linux运维之知识篇 二.Linux运维之系统篇 <Linux运维总结:使用U盘制作Linux镜像> <Linux运维实战:创建LVM挂载到指定目录> <Linux ...

最新文章

  1. 【性能优化】小伙伴问我性能指标监控怎么做,这次我安排上了!!
  2. LeetCode 52. N皇后 II
  3. 当程序员产崽后...
  4. OpenCV 图像平移
  5. OpenCASCADE:Modeling Data之二维几何
  6. oracle时间mapper怎么比较,MyBatis+Oracle时间精度丢失的问题
  7. fanuc机器人码垛编程实例_FANUC 机器人码垛编程详细讲解 记得收藏!
  8. 无限踩坑系列(5)-MySQLdb
  9. ios 如何在cell中去掉_iOS开发:关于 去除UITableViewCell复用机制 的几种方法
  10. 1005 C语言控制输入1001-1004
  11. Java中堆、栈和常量池的区别
  12. IIS7的HTTP 500.19错误
  13. c#退出应用程序办法
  14. 俄罗斯方块C4droid
  15. 闰年,闰月对应的天数快速记忆法
  16. 日历教程:如何使Mac和iPhone上的日历显示国家节假日安排?
  17. Seventh season eighteenth episode,Joey got an award??????
  18. 电商兴头上的丁磊请注意,阿里云在用AI养猪了
  19. 用vue实现打印页面的几种方法
  20. 从三个层面来谈下自己的团队管理心得及感悟

热门文章

  1. 360度无死角、近距离看「CNN」训练,是种什么体验?网友:美得不真实
  2. GitHub因“纳粹”评论遭解雇的犹太员工被复职,CEO公开致歉,开除他的HR走人...
  3. Windows支持直接访问Linux子系统文件:你的下一台Linux何必是Linux
  4. 想让论文能发表,应该星期几投稿?丨SCI研究
  5. 敏捷开发思想及Scrum实践
  6. lintcode:Unique Characters 判断字符串是否没有重复字符
  7. Git教程学习(一)
  8. php实现适配器模式(转)
  9. linux重启后出现control+D错误的解决
  10. 不快乐工作场所的生存法则