Nosql Mongodb之旅(14)—MongoDB 数据备份

备份

  1. [root@localhostbin]#./mongodump-dmy_mongodb
  2. connectedto:127.0.0.1
  3. DATABASE:my_mongodbtodump/my_mongodb
  4. my_mongodb.system.indexestodump/my_mongodb/system.indexes.bson
  5. 1objects
  6. my_mongodb.usertodump/my_mongodb/user.bson
  7. 2objects
  8. [root@localhostbin]#ll
  9. 总计67648
  10. -rwxr-xr-x1rootroot75087562011-04-06bsondump
  11. drwxr-xr-x3rootroot409604-1023:54dump
  12. -rwxr-xr-x1rootroot29780162011-04-06mongo

此时,会在当前目录下创建一个dump目录,用于存放备份出来的文件,当然也可以指定备份存放的目录。

  1. root@localhostbin]#./mongodump-dmy_mongodb-omy_mongodb_dump
  2. DATABASE:my_mongodbtomy_mongodb_dump/my_mongodb
  3. my_mongodb.system.indexestomy_mongodb_dump/my_mongodb/system.indexes.bson
  4. my_mongodb.usertomy_mongodb_dump/my_mongodb/user.bson
  5. [root@localhostbin]#

这个例子中将备份文件存在了当前目录下的my_mongodb_dump目录下

恢复

由于刚刚已经做了备份,所以我们先讲库my_mongodb删除掉

  1. >usemy_mongodb
  2. switchedtodbmy_mongodb
  3. >db.dropDatabase()
  4. {"dropped":"my_mongodb","ok":1}
  5. >showdbs
  6. admin(empty)
  7. local(empty)
  8. test(empty)
  9. >

接下来,我们进行数据恢复

  1. [root@localhostbin]#./mongorestore-dmy_mongodbmy_mongodb_dump/*
  2. WedApr1100:03:03my_mongodb_dump/my_mongodb/user.bson
  3. WedApr1100:03:03goingintonamespace[my_mongodb.user]
  4. WedApr1100:03:032objectsfound
  5. WedApr1100:03:03my_mongodb_dump/my_mongodb/system.indexes.bson
  6. WedApr1100:03:03goingintonamespace[my_mongodb.system.indexes]
  7. WedApr1100:03:03{name:"_id_",ns:"my_mongodb.user",key:{_id:1},v:0}
  8. WedApr1100:03:031objectsfound
  9. [root@localhostbin]#

经验证数据库又回来了,其实要想恢复数据库,大可不必先删除my_mongodb库,只要说明-drop参数,就可以在恢复的时候先删除表然后再向表中插入数据。

相关文章

校园网上订餐系统系统主要功能模块包括公告内容(公告栏、轮...
从今天开始,正式进入项目阶段。本次的项目是跟着黑马的瑞吉...
在可预见的将来,IT不会萎缩,只会越发展越庞大,最终会渗透...
vulntarget-b靶场最详细通关记录。
MongoDB是一个开源、高性能、支持海量数据存储的。
【NoSQL数据库技术与应用】课本代码、课后答案(持续更新)