一、备份

  在Mongodb中我们使用mongodump命令来备份MongoDB数据。该命令可以导出所有数据到指定目录中。

  mongodump命令可以通过参数指定导出的数据量级转存的服务器。

    

  mongodump命令脚本语法如下:

  >mongodump -h dbhost -d dbname -o dbdirectory
  • -h:

    MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017

  • -d:

    需要备份的数据库实例,例如:test

  • -o:

    备份的数据存放位置,例如:c:\data\dump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。

  示例:在本地使用 27017 启动你的mongod服务。打开命令提示符窗口,进入MongoDB安装目录的bin目录输入命令mongodump:

C:\Program Files\MongoDB\Server\3.2\bin>mongodump
2016-01-13T10:27:25.076+0800 writing admin.system.users to
2016-01-13T10:27:25.078+0800 done dumping admin.system.users (1 document)
2016-01-13T10:27:25.078+0800 writing admin.system.version to
2016-01-13T10:27:25.080+0800 done dumping admin.system.version (1 document)
2016-01-13T10:27:25.082+0800 writing admin.col to
2016-01-13T10:27:25.084+0800 writing maxh.maxh to
2016-01-13T10:27:25.085+0800 writing maxh.user to
2016-01-13T10:27:25.087+0800 done dumping admin.col (2 documents)
2016-01-13T10:27:25.088+0800 done dumping maxh.maxh (1 document)
2016-01-13T10:27:25.090+0800 done dumping maxh.user (6 documents)

备份指定的数据库集合。

C:\Program Files\MongoDB\Server\3.2\bin>mongodump --collection user --db maxh
2016-01-13T10:41:55.955+0800 writing maxh.user to
2016-01-13T10:41:55.957+0800 done dumping maxh.user (6 documents)

二、恢复

  示例:在本地使用 27017 启动你的mongod服务。打开命令提示符窗口,进入MongoDB安装目录的bin目录输入命令mongorestore:

C:\Program Files\MongoDB\Server\3.2\bin>mongorestore
2016-01-13T10:50:51.787+0800 using default 'dump' directory
2016-01-13T10:50:51.790+0800 building a list of dbs and collections to restor
e from dump dir
2016-01-13T10:50:51.793+0800 don't know what to do with subdirectory "test\ma
xh", skipping...
2016-01-13T10:50:51.796+0800 reading metadata for maxh.user from dump\maxh\us
er.metadata.json
2016-01-13T10:50:51.799+0800 reading metadata for admin.col from dump\admin\c
ol.metadata.json
2016-01-13T10:50:51.801+0800 restoring maxh.user from dump\maxh\user.bson
2016-01-13T10:50:51.803+0800 reading metadata for maxh.maxh from dump\maxh\ma
xh.metadata.json
2016-01-13T10:50:51.805+0800 restoring admin.col from dump\admin\col.bson
2016-01-13T10:50:51.807+0800 restoring maxh.maxh from dump\maxh\maxh.bson
2016-01-13T10:50:51.818+0800 error: multiple errors in bulk operation:
- E11000 duplicate key error collection: admin.col index: _id_ dup key: { : Ob
jectId('5694f184617e63523cfdefe1') }
- E11000 duplicate key error collection: admin.col index: _id_ dup key: { : Ob
jectId('5695b2574fe3fe853bfe7c3a') }

2016-01-13T10:50:51.825+0800 error: multiple errors in bulk operation:
- E11000 duplicate key error collection: maxh.user index: _id_ dup key: { : Ob
jectId('56946fba3a18f4867aecbcd1') }
- E11000 duplicate key error collection: maxh.user index: _id_ dup key: { : Ob
jectId('5694714a3a18f4867aecbcd2') }
- E11000 duplicate key error collection: maxh.user index: _id_ dup key: { : Ob
jectId('5694ce6685cf2632ea951c05') }
- E11000 duplicate key error collection: maxh.user index: _id_ dup key: { : Ob
jectId('5694d84c85cf2632ea951c06') }
- E11000 duplicate key error collection: maxh.user index: _id_ dup key: { : Ob
jectId('5694dab385cf2632ea951c07') }
- E11000 duplicate key error collection: maxh.user index: _id_ dup key: { : Ob
jectId('5694dae885cf2632ea951c08') }

2016-01-13T10:50:51.838+0800 restoring indexes for collection admin.col from
metadata
2016-01-13T10:50:51.841+0800 error: E11000 duplicate key error collection: ma
xh.maxh index: _id_ dup key: { : ObjectId('569467e73a18f4867aecbcd0') }
2016-01-13T10:50:51.844+0800 restoring indexes for collection maxh.user from
metadata
2016-01-13T10:50:51.847+0800 finished restoring admin.col (2 documents)
2016-01-13T10:50:51.849+0800 restoring indexes for collection maxh.maxh from
metadata
2016-01-13T10:50:51.851+0800 finished restoring maxh.user (6 documents)
2016-01-13T10:50:51.855+0800 finished restoring maxh.maxh (1 document)
2016-01-13T10:50:51.857+0800 restoring users from dump\admin\system.users.bso
n
2016-01-13T10:50:52.163+0800 done

C:\Program Files\MongoDB\Server\3.2\bin>

三、监控

  MongoDB中提供了mongostat 和 mongotop 两个命令来监控MongoDB的运行情况。

C:\Program Files\MongoDB\Server\3.2\bin>mongostat
insert query update delete getmore command % dirty % used flushes vsize res q
r|qw ar|aw netIn netOut conn time
*0 *0 *0 *0 0 1|0 0.0 0.0 0 141.0M 77.0M
0|0 0|0 79b 18k 1 2016-01-13T11:14:37+08:00
*0 *0 *0 *0 0 1|0 0.0 0.0 0 141.0M 77.0M
0|0 0|0 79b 18k 1 2016-01-13T11:14:38+08:00
*0 *0 *0 *0 0 1|0 0.0 0.0 0 141.0M 77.0M
0|0 0|0 79b 18k 1 2016-01-13T11:14:39+08:00
*0 *0 *0 *0 0 1|0 0.0 0.0 0 141.0M 77.0M
0|0 0|0 79b 18k 1 2016-01-13T11:14:40+08:00
*0 *0 *0 *0 0 1|0 0.0 0.0 0 141.0M 77.0M
0|0 0|0 79b 18k 1 2016-01-13T11:14:41+08:00

  mongotop也是mongodb下的一个内置工具,mongotop提供了一个方法,用来跟踪一个MongoDB的实例,查看哪些大量的时间花费在读取和写入数据。 mongotop提供每个集合的水平的统计数据。默认情况下,mongotop返回值的每一秒。

  后面的10是<sleeptime>参数 ,可以不使用,等待的时间长度,以秒为单位,mongotop等待调用之间。通过的默认mongotop返回数据的每一秒。

C:\Program Files\MongoDB\Server\3.2\bin>mongotop 10
2016-01-13T11:12:18.752+0800 connected to: 127.0.0.1

ns total read write 2016-01-13T11:12:28+08:00
admin.col 0ms 0ms 0ms
admin.system.roles 0ms 0ms 0ms
admin.system.users 0ms 0ms 0ms
admin.system.version 0ms 0ms 0ms
local.startup_log 0ms 0ms 0ms
local.system.replset 0ms 0ms 0ms
maxh.maxh 0ms 0ms 0ms
maxh.user 0ms 0ms 0ms

 C:\Program Files\MongoDB\Server\3.2\bin>mongotop --locks

报告每个数据库的锁的使用中,使用mongotop - 锁,:

C:\Program Files\MongoDB\Server\3.2\bin>mongotop --locks
2016-01-13T11:17:15.224+0800 Failed: server does not support reporting lock i
nformation

抛出一个问题--------------------------------------------------------------

学习mongo系列(十)MongoDB 备份(mongodump)与恢复(mongorerstore) 监控(mongostat mongotop)的更多相关文章

  1. 菜鸟的mongoDB学习---(七)MongoDB 备份(mongodump)与恢复(mongorerstore)

    MongoDB数据备份 在Mongodb中我们使用mongodump命令来备份MongoDB数据. 该命令能够导出全部数据到指定文件夹中. mongodump命令能够通过參数指定导出的数据量级转存的s ...

  2. MongoDB备份(mongodump)与恢复(mongorestore)工具实践

    mongodump和mongorestore实践 1.mongodump备份工具 mongodump能够在Mongodb运行时进行备份,它的工作原理是对运行的Mongodb做查询,然后将所有查到的文档 ...

  3. MongoDB 备份(mongodump)与恢复(mongorestore)

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

  4. MongoDB备份(mongodump)和恢复(mongorestore)

    MongoDB提供了备份和恢复的功能,分别是MongoDB下载目录下的mongodump.exe和mongorestore.exe文件 1.备份数据使用下面的命令: >mongodump -h ...

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

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

  6. NOSQL学习笔记系列之MongoDB 一 基础

    主题:MongoDB 学习资料参考网址: 1.http://www.w3cschool.cc/mongodb/mongodb-tutorial.html 2.http://www.icoolxue.c ...

  7. 学习mongo系列(八)密码与权限

    一.设置密码及用户角色[1] > db.createUser(... {... user: "maxh",... pwd: "123",... roles ...

  8. 学习mongo系列(六)limit(munber),skip(number)

    > db.user.find().pretty(){ "_id" : ObjectId("56946fba3a18f4867aecbcd1"), &quo ...

  9. 学习mongo系列(一) win/mac安装 解析 连接

    一.安装mongo数据库 下载链接https://www.mongodb.org/downloads, 在执行如下命令的时候事先按照目录新建如下的目录:(如果数据库安装在D盘就在D盘的根目录下建)&q ...

随机推荐

  1. grep中正则匹配的使用

    如要匹配Computer或computer两个单词,可做如下操作: [Cc]mputer “.”允许匹配ASCII集中任意字符,或为字母,或为数字. 使用\{\}匹配模式结果出现的次数 匹配字母A出现 ...

  2. request.querystring和request.form、session的区别

    1. request.querystring是用来接收地址里面问号“?”后面的参数的内容,  用get方法读取的 不安全   request.form是用来接收表单递交来的数据 ,是用post方法读取 ...

  3. Codeigniter2.25部署Linux(php5.6)

    1).默认路由:修改system/core/Router.php 中第146行.如下图所示.ps:转换成小写我也是醉了...注释的代表是codeigniter作者写的,而上面的是我更改的 2).mod ...

  4. iOS:高德地图的使用

    本人花了点时间集成了高德地图的几乎所有的功能,包含:地图的显示.地图的绘制.地图的定位.地图的POI数据检索.地图的线路规划.地图导航等下载地址如下:https://github.com/xiayua ...

  5. java程序中调用Linux命令Windows命令

    目前总结的方法: 调用Linux简单的命令行,设置文件夹权限755 String scriptDir = "/home/wenf"; String cmd = "chmo ...

  6. 复制代理JOB

    复制代理说明: 复制代理执行许多与复制有关的任务,其中包括创建架构和数据副本.检测发布服务器或订阅服务器上的更新以及在服务器之间传播更改. 默认情况下,复制代理在 Microsoft SQL Serv ...

  7. request.GetResponse 400错误处理方法

    问题描述:在使用request.GetResponse时,如果是400错误,将抛出异常信息,而获取不到返回内容,所以返回的内容只能在catch上面获取,转载于 http://blog.csdn.net ...

  8. 向ES6看齐,用更好的JavaScript(三)

    本文是ES6系列的第三篇,主要介绍ES6新增的数据类型.数据结构,先上传送门: 1 变量部分 2 现有对象拓展 3 新增数据类型/数据结构 4 新的异步编程模式 5 类和模块 1 第七种数据类型Sym ...

  9. .NET学习记录1

    .NET 可以干什么呢? 1.桌面应用程序 (WinForm ) 2.internet 应用程序(asp.net) 3.手机应用开发(wp7)好像现在C#也能开发android应用了 现在主要有两个方 ...

  10. paper 110:凸优化和非凸优化

    数学中最优化问题的一般表述是求取,使,其中是n维向量,是的可行域,是上的实值函数.凸优化问题是指是闭合的凸集且是上的凸函数的最优化问题,这两个条件任一不满足则该问题即为非凸的最优化问题. 其中,是 凸 ...