MongoDB备份与恢复
mongodb和mysql很相似,那么它是否也和mysql一样可以备份数据库和恢复数据库呢?那是当然的,下面将简单介绍mongodb的备份和恢复。
1.MongoDB备份
备份指定库:
mongodump -h ip -d dbname -o dir
-h后面跟服务器ip,-d后面跟database名字,不加则备份所有库,-o后指定备份到哪里,它是一个目录
例如:mongodump -d admin -o /tmp/mongobackup/ #将admin库备份到/tmp/mongobackup目录下
备份所有库:
mongodump -h ip -o dir
备份指定集合:
mongodump -d mydb -c test -o /tmp/test
-c指定集合名字
导出集合为json文件:
mongoexport -d mydb -c test -o /tmp/test.json
-o后面跟的是一个文件名字不是目录
说明:mongodump备份test集合会生成test.bson和test.metadata.json两个文件,无法通过查看这两个文件来查看test集合的文档内容。而mongoexport备份test集合是自己命名的一个.json文件,该文件的内容就是test集合的文档内容,可以通过查看该.json文件看到test集合的所有文档内容。
2.MongoDB恢复
恢复所有库:
mongorestore --drop dir/
其中dir是备份所有库的目录名字,其中--drop可选,意思是当恢复之前先把之前的数据删除,不建议使用
恢复指定库:
mongorestore -d mydbdir/
-d跟要恢复的库名字,dir就是该库备份时所在的目录
例如:mongorestore -d /tmp/mongobackup/admin/ #恢复admin数据库
恢复集合:
mongorestore -d mydb -c test dir/mydb/test.bson
-c后面跟要恢复的集合名字,dir是备份mydb库时生成文件所在路径,这里需要集合bson文件的路径而不是目录
导入集合:
mongoimport -d mydb -c test --file /tmp/test.json
mongoimport和mongoexport是相对的
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341