gpt4 book ai didi

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

转载 作者:太空宇宙 更新时间:2023-11-03 23:24:25 25 4
gpt4 key购买 nike

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

理想情况下,使用 https://mongodb.github.io/node-mongodb-native/ 会很好。为此,尽管我没有找到调用原始命令的方法,例如 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();
});
}
});

关于node.js - 如何编写基于 Node.js 的 cron 作业来删除 MongoDB 集合并发出 db.copyDatabase 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46046876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com