mongodb导出导入-创新互联
数据库都分为冷备份与热备份,所谓的冷备份就是停库,然后把数据拷贝;热备份就是使用相应工具,在数据库运行时做备份。每种库都会有自己的热备份工具,mongodb也不例外。
专注于为中小企业提供成都网站制作、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业广昌免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。mongodb的备份主要有热备和冷备。
一,冷备:
停止mongodb服务,直接copy数据目录;启动mongodb时,可以用--dbpath指定自己设置的数据库存储目录。
二,热备:
用mongodump来做MongoDB的库或表级别的热备份。
认识一下mongodump,
[mongo@tstdb-25-220 mongodb]$ bin/mongodump --help Usage: mongodump看下导出过程
[mongo@tstdb-25-220 mongodb]$ bin/mongodump -h 172.16.25.220 -d sykdb -o /usr/local/mongodb/backup 2016-10-31T09:41:03.521+0800 writing sykdb.system.indexes to 2016-10-31T09:41:03.522+0800 done dumping sykdb.system.indexes (2 documents) 2016-10-31T09:41:03.523+0800 writing sykdb.system.profile to 2016-10-31T09:41:03.523+0800 writing sykdb.sykdb to 2016-10-31T09:41:03.523+0800 writing sykdb.table_syk to 2016-10-31T09:41:03.524+0800 done dumping sykdb.system.profile (2 documents) 2016-10-31T09:41:03.524+0800 done dumping sykdb.sykdb (2 documents) 2016-10-31T09:41:03.524+0800 done dumping sykdb.table_syk (1 document)导出后的文件如下:
[mongo@tstdb-25-220 mongodb]$ cd backup/ [mongo@tstdb-25-220 backup]$ ll 总用量 4 drwxr-xr-x. 2 mongo dbmon 4096 10月 31 09:41 sykdb [mongo@tstdb-25-220 backup]$ cd sykdb/ [mongo@tstdb-25-220 sykdb]$ ll 总用量 28 -rw-r--r--. 1 mongo dbmon 75 10月 31 09:41 sykdb.bson -rw-r--r--. 1 mongo dbmon 83 10月 31 09:41 sykdb.metadata.json -rw-r--r--. 1 mongo dbmon 136 10月 31 09:41 system.indexes.bson -rw-r--r--. 1 mongo dbmon 1529 10月 31 09:41 system.profile.bson -rw-r--r--. 1 mongo dbmon 55 10月 31 09:41 system.profile.metadata.json -rw-r--r--. 1 mongo dbmon 36 10月 31 09:41 table_syk.bson -rw-r--r--. 1 mongo dbmon 87 10月 31 09:41 table_syk.metadata.json下面看一下导入(导出与导入可以看做是备份与恢复,所有的备份都是为了恢复而做)
[mongo@tstdb-25-220 mongodb]$ bin/mongorestore --help Usage: mongorestore--oplogReplay这个参数,大家注意一下,mongodb的导出导入可以做的基本时间点的恢复
我们再insert一行,然后测试一下:
moe:PRIMARY> db.sykdb.insert ({"job":"dba"})然后导入:
[mongo@tstdb-25-220 mongodb]$ bin/mongorestore -h 172.16.25.220 -d sykdb backup/sykdb 2016-10-31T10:28:21.049+0800 building a list of collections to restore from backup/sykdb dir 2016-10-31T10:28:21.051+0800 reading metadata for sykdb.sykdb from backup/sykdb/sykdb.metadata.json 2016-10-31T10:28:21.051+0800 reading metadata for sykdb.table_syk from backup/sykdb/table_syk.metadata.json 2016-10-31T10:28:21.051+0800 reading metadata for sykdb.system.profile from backup/sykdb/system.profile.metadata.json 2016-10-31T10:28:21.051+0800 restoring sykdb.sykdb from backup/sykdb/sykdb.bson 2016-10-31T10:28:21.051+0800 no indexes to restore 2016-10-31T10:28:21.052+0800 finished restoring sykdb.system.profile (0 documents) 2016-10-31T10:28:21.052+0800 restoring sykdb.table_syk from backup/sykdb/table_syk.bson 2016-10-31T10:28:21.086+0800 restoring indexes for collection sykdb.sykdb from metadata 2016-10-31T10:28:21.086+0800 restoring indexes for collection sykdb.table_syk from metadata 2016-10-31T10:28:21.086+0800 finished restoring sykdb.sykdb (2 documents) 2016-10-31T10:28:21.086+0800 finished restoring sykdb.table_syk (1 document) 2016-10-31T10:28:21.087+0800 done查询一下,看数据是否回来了
moe:PRIMARY> db.sykdb.find().limit(100); { "_id" : ObjectId("5816ac26d37a70860b091c1f"), "job" : "dba" } { "_id" : ObjectId("5813041a56c55d778812e689"), "name" : "syk" } { "_id" : ObjectId("5813065356c55d778812e68a"), "loc" : "beijing" }介绍一对命令:mongoexport/mongoimport
[mongo@tstdb-25-220 mongodb]$ bin/mongoexport -h 172.16.25.220 -d sykdb -c table_syk -o table_syk.dat 2016-10-31T11:43:40.893+0800 connected to: 172.16.25.220 2016-10-31T11:43:40.894+0800 exported 1 record查看导出来的文件:
[mongo@tstdb-25-220 mongodb]$ strings table_syk.dat {"_id":{"$oid":"581313a856c55d778812e68b"},"name":"syk"} [mongo@tstdb-25-220 mongodb]$ file table_syk.dat table_syk.dat: ASCII text看来这个工具相当于其他数据库中的逻辑导出
把表清空
moe:PRIMARY> db.table_syk.drop()导入
[mongo@tstdb-25-220 mongodb]$ bin/mongoimport -h 172.16.25.220 -d sykdb -c table_syk table_syk.dat 2016-10-31T11:45:22.499+0800 connected to: 172.16.25.220 2016-10-31T11:45:22.540+0800 imported 1 document数据回来了。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
本文题目:mongodb导出导入-创新互联
转载源于:http://cdiso.cn/article/shojg.html