ITPub博客

首页 > 数据库 > NoSQL > mongodb备份与恢复

mongodb备份与恢复

原创 NoSQL 作者:celestezhang 时间:2015-08-28 17:59:12 0 删除 编辑

[root@QA-5-43 ~]# mkdir -p /data/mongodb/backup

/data/mongodb/mongodb/bin/mongodump -d scott -o /data/mongodb/backup/

mongodump mongo导出数据库命令 mongodump --help 可以查看该命令下所有的帮助

-h 导出源

-d 要导出的数据库名称

-o 数据库要导出的位置

删除scott数据库

shared:PRIMARY> show dbs;show dbs;

admin  0.078GB

local  2.077GB

scott  0.078GB

test   0.078GB

shared:PRIMARY> use scott;use scott;

switched to db scott

shared:PRIMARY> db.dropDatabase();db.dropDatabase();

{ "dropped" : "scott", "ok" : 1 }

shared:PRIMARY> show dbsshow dbs

admin  0.078GB

local  2.077GB

test   0.078GB

恢复scott数据库

/data/mongodb/mongodb/bin/mongorestore -d scott /data/backup/scott

-d 使用的数据库名称

后面直接加你刚才导出的目录,这样是直接恢复所有表

如果-c 是恢复一个表

shared:PRIMARY> use test;use test;

switched to db test

shared:PRIMARY> show collections;show collections;

system.indexes

testdb

 [root@QA-5-43 scott]# /data/mongodb/mongodb/bin/mongoexport -d scott -c emp -o emp.dat

参数说明:

-d 指明使用的库, 本例中为scott

-c 指明要导出的表, 本例中为emp

可以看到导入数据的时候会隐式创建表结构

2015-08-28T05:51:06.954-0400    connected to: localhost

2015-08-28T05:51:09.714-0400    exported 100000 records

[root@QA-5-43 scott]# /data/mongodb/mongodb/bin/mongoimport -d test -c emp emp.dat

2015-08-28T05:52:11.074-0400    connected to: localhost

2015-08-28T05:52:14.072-0400    [#########...............] test.emp     2.3 MB/5.6 MB (40.0%)

2015-08-28T05:52:17.072-0400    [################........] test.emp     4.0 MB/5.6 MB (70.8%)

2015-08-28T05:52:19.454-0400    imported 100000 documents

[root@QA-5-43 scott]#

可以看出emp表杯倒入到test库中

注 默认没有collection的数据库恢复不了

其实备份和恢复比导入和导出要方便些,而且一般不会出错,所以大部分时候使用备份和恢复操作就可以了

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29898569/viewspace-1785249/,如需转载,请注明出处,否则将追究法律责任。

下一篇: excel导入postgre
请登录后发表评论 登录
全部评论

注册时间:2014-09-19

  • 博文量
    39
  • 访问量
    94465