mongo shell 中有可用的clone和copydb命令,如何在 mongo 节点本机驱动程序(mongodb)中访问它们?
这就是我尝试过的:
我发现了db.command
可用的节点本机 mongodb 驱动程序。阅读文档我尝试了这段代码(db
目标数据库名为“newdb”)
db = db.db('newdb');
db.addUser('newdbuser', 'newdbpass', {}, function (err) {
err && console.log(err);
console.log(authUrlForDb(config.MONGO_HOSTS));
db.command({
copydb: 1,
fromhost: config.MONGO_HOSTS,
fromdb: config.MOTHER_DB, // some database name
todb: 'newdb',
username: config.ADMIN_USERNAME, //
key: {
username: config.ADMIN_USERNAME,
password: config.ADMIN_PASSWORD
}
}, function (err, res) {
console.log(config.MONGO_HOSTS);
console.log(err, res);
db.close();
});
});
失败并记录以下内容:
hostname1.host.io,hostname2.host.io
null { ok: 0, errmsg: 'access denied; use admin db' }