我正在使用node.js和streams尝试将整个mongoDB集合转储到文件中,但它无法正常工作。我怀疑它与旧式流和0.10流有关,但我可能是错的。
下面的代码也可以在这里找到:github.com
mongodb-collection-dump
也在那个回购中。
var fs = require('fs');
var dump = require('mongodb-collection-dump');
var collectionDumpFile = '/tmp/collection-dump.json';
var f = fs.createWriteStream(collectionDumpFile);
f.on('open', function() {
var d = dump('mongodb://127.0.0.1/test_db', 'testcollection', f);
});
d.on('end', function(){
console.log("done in write");
});
d.on('error', function(err){
console.log("there was an error");
console.log(err);
});
答案 0 :(得分:0)
您可以使用mongodump
或mongoexport
来创建mongodb的转储。
mongodump
更适合备份和存储,不仅仅是数据,还有很多关于集合的元数据,比如索引。您也可以将其调用到特定数据库(-d)以及集合(-c)。
要从node.js执行此操作,请使用child_process
。