在mongodb中把一个表中的数据转移到另外一个表中应该如何实现呢?求诸位能不吝赐教,在此先谢过了
2 回答
侃侃尔雅
TA贡献1801条经验 获得超15个赞
mongo shell中实现
db.source.find().forEach(function(doc) { db.target.insert(doc); });
或者可以通过mongoexport
+mongoimport
mongoexport -h [ip_address] -d [database] -c [collection] > source.json mongoimport -h [ip_address] -d [database] -c [target] source.json
3.2以后有一个更好玩的特性——管道。所以:
mongoexport -h [ip_address] -d [database] -c [collection] | mongoimport -h [ip_address] -d [database] -c [target]
一只名叫tom的猫
TA贡献1906条经验 获得超3个赞
同一个Mongodb实例下:
use db_source;var docs = db_source.collection_souce.find();use db_target; docs.forEach(function(d){db.collection_target.insert(d)});
不同Mongodb实例之间
可以使用mongodump和mongorestore
备份:
mongodump -h host:port -d db_source -c collection_source
恢复
mongorestore -h host:port -d db_target -c collection_target dump/collection_source.bson
两个工具的详细使用方式可以参考
mongodump — MongoDB Manual 3.2
- 2 回答
- 0 关注
- 2188 浏览
添加回答
举报
0/150
提交
取消