• 首先数据库备份: mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径 
mongodump -h 127.0.0.1 -u admin -p xxx  -d blog -o '/home/timeless/桌面/mongodump' --authenticationDatabase admin

注意  --authenticationDatabase  参数制定认证数据库   否则会提示错误:

Failed: error connecting to db server: server returned error on SASL authentication step: Authentication failed.   //提示认证失败

也可以指定导出的集合  -collection

  • 还原数据库实例
$ mongorestore -h XXX -u admin -p XXX -d blog  /home/timeless/桌面/mongodump/blog --authenticationDatabase admin
--25T15::40.481+ building a list of collections to restore from /home/timeless/桌面/mongodump/blog dir
--25T15::40.491+ reading metadata for blog.post from /home/timeless/桌面/mongodump/blog/post.metadata.json
--25T15::40.499+ reading metadata for blog.user from /home/timeless/桌面/mongodump/blog/user.metadata.json
--25T15::40.510+ reading metadata for blog.meta from /home/timeless/桌面/mongodump/blog/meta.metadata.json
--25T15::40.555+ restoring blog.meta from /home/timeless/桌面/mongodump/blog/meta.bson
--25T15::40.568+ restoring indexes for collection blog.meta from metadata
--25T15::40.602+ restoring blog.post from /home/timeless/桌面/mongodump/blog/post.bson
--25T15::40.635+ restoring blog.user from /home/timeless/桌面/mongodump/blog/user.bson
--25T15::40.637+ finished restoring blog.meta ( documents)
--25T15::40.637+ restoring indexes for collection blog.post from metadata
--25T15::40.645+ reading metadata for blog.page from /home/timeless/桌面/mongodump/blog/page.metadata.json
--25T15::40.646+ reading metadata for blog.content from /home/timeless/桌面/mongodump/blog/content.metadata.json
--25T15::40.646+ finished restoring blog.post ( document)
--25T15::40.646+ reading metadata for blog.option from /home/timeless/桌面/mongodump/blog/option.metadata.json
--25T15::40.646+ restoring indexes for collection blog.user from metadata
--25T15::40.679+ finished restoring blog.user ( documents)
--25T15::40.680+ reading metadata for blog.counters from /home/timeless/桌面/mongodump/blog/counters.metadata.json
--25T15::40.680+ restoring blog.page from /home/timeless/桌面/mongodump/blog/page.bson
--25T15::40.707+ restoring blog.option from /home/timeless/桌面/mongodump/blog/option.bson
--25T15::40.741+ restoring blog.content from /home/timeless/桌面/mongodump/blog/content.bson
--25T15::40.785+ restoring blog.counters from /home/timeless/桌面/mongodump/blog/counters.bson
--25T15::40.836+ restoring indexes for collection blog.option from metadata
--25T15::40.837+ restoring indexes for collection blog.page from metadata
--25T15::40.838+ restoring indexes for collection blog.content from metadata
--25T15::40.847+ finished restoring blog.page ( document)
--25T15::40.847+ reading metadata for blog.system.users from /home/timeless/桌面/mongodump/blog/system.users.metadata.json
--25T15::40.847+ finished restoring blog.content ( document)
--25T15::40.848+ reading metadata for blog.webinfo from /home/timeless/桌面/mongodump/blog/webinfo.metadata.json
--25T15::40.848+ restoring indexes for collection blog.counters from metadata
--25T15::40.848+ finished restoring blog.option ( document)
--25T15::40.884+ restoring blog.webinfo from /home/timeless/桌面/mongodump/blog/webinfo.bson
--25T15::40.884+ restoring indexes for collection blog.webinfo from metadata
--25T15::40.916+ finished restoring blog.counters ( documents)
--25T15::40.916+ restoring blog.system.users from /home/timeless/桌面/mongodump/blog/system.users.bson
--25T15::40.916+ finished restoring blog.webinfo ( documents)
--25T15::40.917+ restoring indexes for collection blog.system.users from metadata
--25T15::40.928+ finished restoring blog.system.users ( documents)
--25T15::40.928+ done

该也可以指定要恢复的集合  -collection

注意的地方 

  • mongoimport 执行导入前,新数据库中没有 XX 表一样可以导入成功;
  • mongoexport 和 mongoimport 所需的各个参数输入的先后顺序不严格;
  • 对于副本集,mongoexport 的数据导出可以是副本集中的 primary 节点,也可以是 secondary 节点;
  • 对于副本集,mongoimport 的数据导入必须是 primary 节点;
  • 对于大数据量的导出,用 mongoexport 操作完全不会有生产问题;
  • 对于大数据量的导入(超过 500 MB),用 mongoimport 操作的话会很容易将 primary 节点拖垮,因为这会导致全量同步导致主节点崩溃,所以要避免生产环境中大数据量的导入。正确的做法是先建立单点,导入,之后再建立副本集。

mongodb数据库操作--备份 还原 导出 导入的更多相关文章

  1. mongodb 数据库操作--备份 还原 导出 导入(转)

    mongodb 数据库操作--备份 还原 导出 导入   -------------------MongoDB数据导入与导出------------------- 1.导出工具:mongoexport ...

  2. mongodb 数据库操作--备份 还原 导出 导入

    mongodb数据备份和还原主要分为二种,一种是针对于库的mongodump和mongorestore,一种是针对库中表的mongoexport和mongoimport 一,mongodump备份数据 ...

  3. mongodb 备份 还原 导出 导入

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

  4. Mongodb 备份 还原 导出 导入 等批量操作

    mongodb数据备份和还原主要分为二种,一种是针对于库的mongodump和mongorestore,一种是针对库中表的mongoexport和mongoimport. 一,mongodump备份数 ...

  5. mongoDB 数据库操作

    mongoDB 数据库操作 数据库命名规则 . 使用 utf8 字符,默认所有字符为 utf8 . 不能含有空格 . / \ "\0" 字符 (c++ 中会将 "\0&q ...

  6. SQL Server 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法

    SQL Server 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法 在使用数据库的过程中,经常会遇到数据库迁移或者数据迁移的问题,或者有突然的数据库损坏,这时需要从数据库的备 ...

  7. sql 数据库的备份还原问题

    今天工作中犯了一个严重的错误,就是在sql中写了一个update语句,还没写条件呢,结果误按了F5,唉,太佩服自己啦...这个脑子怎么不管用了呢?? 唉不说了,我在网上翻来覆去的找资料,最终想是不是可 ...

  8. sql数据库的备份还原问题

    sql数据库的备份还原问题 今天工作中犯了一个严重的错误,就是在sql中写了一个update语句,还没写条件呢,结果误按了F5,唉,太佩服自己啦...这个脑子怎么不管用了呢?? 唉不说了,我在网上翻来 ...

  9. C#实现对数据库的备份还原(完全)

    C#实现对数据库的备份还原 ( 用SQL语句实现对数据库备份还原操作 备份SqlServer数据库: backup database 数据库名 to disk (备份文件存放路径+文件名).bak 还 ...

随机推荐

  1. Android实时监听网络状态(1)

    其实手机在网络方面的的监听也比较重要,有时候我们必须实时监控这个程序的实时网络状态,android在网络断开与连接的时候都会发出广播,我们通过接收系统的广播就可以实现网络的监听. 1.添加访问网络和获 ...

  2. iOS设计模式之生成器

    iOS设计模式之生成器 1.生成器模式的定义 (1): 将一个复杂的对象的构件与它的表示分离,使得相同的构建过程能够创建不同的表示 (2): 生成器模式除了客户之外还包括一个Director(指导者) ...

  3. Linux环境进程间通信

    http://www.ibm.com/developerworks/cn/linux/l-ipc/part2/index2.html http://bbs.chinaunix.net/forum.ph ...

  4. [AngularJS] angular-formly: Default Options

    angular-formly allows you to keep your forms as DRY as possible. TheoptionsTypes property is one way ...

  5. android inflater 用法

    在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById().不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例 ...

  6. Qt树形控件QTreeView使用1——节点的添加删除操作 复选框的设置

    QtreeView是ui中最常用的控件,Qt中QTreeWidget比QTreeView更简单,但没有QTreeView那么灵活(QTreeWidget封装的和MFC的CTreeCtrl很类似,没有m ...

  7. 【转】C++里定义全局变量和函数常用方法

    http://blog.csdn.net/niying/article/details/637084 1:在头文件是声明变量,然后在使用的文件中用exten标识. ".h": in ...

  8. SpringMVC关于json、xml自动转换的原理研究[附带源码分析 --转

    SpringMVC关于json.xml自动转换的原理研究[附带源码分析] 原文地址:http://www.cnblogs.com/fangjian0423/p/springMVC-xml-json-c ...

  9. dependencies与devDependencies的区别

    npm install在安装node模块时,有两种命令参数可以把它们的信息写入package.json文件: –save –save-dev 但它的文档里1,只提到一个小区别,–save会把依赖包名称 ...

  10. MySQL解压版安装配置详解

    MySQL解压版安装起来比较简单,步骤相对较少.下面我们就来详细介绍一下如何在windows操作系统上安装解压班的MySQL. 1.下载解压版MySQL,地址:http://downloads.mys ...