使用node.js express从mongodb导出和导入数据

我想从我的服务器导出所有的数据到我的本地(也没有备份,所以这将作为一个备份。所以我用下面的代码获取在JSON格式的集合,并保存到本地。

我使用的是mongodb和node express。

dbName.find().exec(function(err, output){ var jsonOutput=JSON.stringify(output) fs.writeFile('downloads/output.json', output, function (err) { if (err) { console.log(err) res.send('error') } else{ var filename = 'res.json' var mimetype = 'application/json' res.setHeader('Content-disposition', 'attachment; filename=' + filename) res.setHeader('Content-type', mimetype) res.end(jsonOutput) } }) }) 

这给了我想要的东西。 现在我想在本地机器上处理json,以便我的本地数据与服务器同步。

  1. 如何将所有数据批量存储到后端?
  2. 我在schema之间有很less的引用,所以会创build新的_id,从而影响我的引用
  3. 如果您认为这不是导出数据的正确方法,那么如何使用节点快递来完成?

尝试使用mongodumpmongoexporthttps://docs.mongodb.org/manual/core/backups/

mongoexport提供高效的方式从集合中导出数据(通过查询,如果你想要的话)

mongodump可以完成一个完整的数据库转储(备份),因此您可以使用相同的id,引用,索引轻松地将其恢复到任意位置。 你所有的东西

您可以使用node.js child_process.exec运行mongodump / mongoexport。 您可以使用linux crontab来安排备份。 有很多方法可以用正确的工具来组织