如何编写基于Node.js的cron作业来删除MongoDB集合并发出db.copyDatabase命令

我需要编写一个夜间cron作业(使用Lambda + Node.js),将删除数据库B中的所有集合,然后使用db.copyDatabase将数据库A复制到数据库B.我知道如何通过mongo手动执行所有这些操作客户端,但不知道如何在JavaScript中做到这一点。

理想情况下,最好使用https://mongodb.github.io/node-mongodb-native/来完成,尽pipe我没有看到调用诸如db.copyDatabase原始命令的方法。

你将需要运行它作为一个命令:

 const assert = require('assert'); const MongoClient = require('mongodb').MongoClient; var const = 'mongodb://localhost:27017/test'; MongoClient.connect(url, function(err, db) { if (err) { console.log(err); } else { const mongoCommand = { copydb: 1, fromhost: "localhost", fromdb: "test", todb: "test_dup" }; const admin = db.admin(); admin.command(mongoCommand, function(commandErr, data) { if (!commandErr) { console.log(data); } else { console.log(commandErr.errmsg); } db.close(); }); } });