[mongodb]数据库备份与还原-阿里云开发者社区

开发者社区> 自娱> 正文

[mongodb]数据库备份与还原

简介:
+关注继续查看
mongodb提供了两个命令来备份(mongodump )和恢复(mongorestore )数据库。 

1.备份(mongodump ) 

用法 : 
[root@web3 3]# mongodump --help 
options: 
--help                   produce help message 
-v [ --verbose ]         be more verbose (include multiple times for more 
verbosity e.g. -vvvvv) 
-h [ --host ] arg        mongo host to connect to ("left,right" for pairs) 
-d [ --db ] arg          database to use 
-c [ --collection ] arg  collection to use (some commands) 
-u [ --username ] arg    username 
-p [ --password ] arg    password 
--dbpath arg             directly access mongod data files in the given path, 
instead of connecting to a mongod instance - needs 
to lock the data directory, so cannot be used if a 
mongod is currently accessing the same path 
--directoryperdb         if dbpath specified, each db is in a separate 
directory 
-o [ --out ] arg (=dump) output directory 

例子: 

[root@web3 ~]# mongodump -h 192.168.1.103 -d citys -o /backup/mongobak/3 
connected to: 192.168.1.103 
DATABASE: citys  to     /backup/mongobak/3/citys 
citys.building to /backup/mongobak/3/citys/building.bson 
13650 objects 
citys.system.indexes to /backup/mongobak/3/citys/system.indexes.bson 
1 objects 

备份出来的数据是二进制的,已经经过压缩。比实际数据库要小很多,我的数据库显示占用了260多M,备份后只有2M。 

2.恢复(mongorestore ) 

用法: 
[root@web3 3]# mongorestore --help 
usage: mongorestore [options] [directory or filename to restore from] 
options: 
--help                  produce help message 
-v [ --verbose ]        be more verbose (include multiple times for more 
verbosity e.g. -vvvvv) 
-h [ --host ] arg       mongo host to connect to ("left,right" for pairs) 
-d [ --db ] arg         database to use 
-c [ --collection ] arg collection to use (some commands) 
-u [ --username ] arg   username 
-p [ --password ] arg   password 
--dbpath arg            directly access mongod data files in the given path, 
instead of connecting to a mongod instance - needs to 
lock the data directory, so cannot be used if a 
mongod is currently accessing the same path 
--directoryperdb        if dbpath specified, each db is in a separate 
directory 
--drop                  drop each collection before import 
--objcheck              validate object before inserting 

--drop参数可以在导入之前把collection先删掉。 

例子: 

[root@web3 3]# mongorestore -h 127.0.0.1 --directoryperdb /backup/mongobak/3/         
connected to: 127.0.0.1 
/backup/mongobak/3/citys/building.bson 
going into namespace [citys.building] 
13667 objects 
/backup/mongobak/3/citys/system.indexes.bson 
going into namespace [citys.system.indexes] 
1 objects 

另外mongodb还提供了mongoexport 和 mongoimport 这两个命令来导出或导入数据,导出的数据是json格式的。也可以实现备份和恢复的功能。 

例: 

mongoexport -d mixi_top_city_prod -c building_45 -q '{ "uid" : "10832545" }' > mongo_10832545.bson 

mongoimport -d mixi_top_city -c building_45 --file mongo_10832545.bson

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
数据库的自我修炼——阿里云MongoDB备份恢复功能说明和原理介绍
2018年1月17-25日,NoSQL数据库直播大讲堂峰会顺利结束,阿里云数据库团队为大家带来了一场别开生面的知识盛会,给大家带来深度的数据库技术及产品分享。本文是《阿里云MongoDB备份恢复功能说明和原理介绍》演讲整理,主要讲解了阿里云在MongoDB备份恢复上采用的技术原理和优势。
10101 0
MongoDB数据库操作和程序基础文档
转自:http://blog.csdn.net/xto/archive/2010/03/22/5403855.aspx 数据库常用操作命令 Bin\mongod run 启动数据库服务端。 bin\mongod.exe --dbpath d:\data\mongo 启动数据库服务端并且将数据库目录设定在该地址下。
796 0
阿里云宣布数据库备份DBS正式商用,5分钟完成数据库上云备份
7月11日,阿里云宣布数据库备份DBS正式商用,作为数据库上云备份通道,与对象存储OSS构建无门槛的云数据库备份解决方案,仅需5分钟即可实现秒级RPO(Recovery Point Objective恢复点目标,通俗理解是当数据库故障时,允许丢失多长时间数据,RPO越小越好)的实时备份。
2629 0
数据库误操作后悔药来了:AnalyticDB PostgreSQL教你实现分布式一致性备份恢复
本文将介绍AnalyticDB PostgreSQL版备份恢复的原理与使用方法。
383 0
已备份数据库的磁盘结构版本为611,服务器支持版本为539,无法还原或升级数据库
http://blog.csdn.net/smithliu328/article/details/8363463 已备份数据库的磁盘结构版本为611,服务器支持版本为539,无法还原或升级数据库 分类: SQL Server backup & Restore 2012-12-21 13:17 2646人阅读 评论(0) 收藏 举报 大家都知道高级版本的数据库文件无法还原或者附加到低版本,因为高版本和低版本文件格式会有不同。
1529 0
+关注
自娱
阿里巴巴无线客户端性能与安全负责人 Gradle中文文档作者
158
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载