Mongodb版本3.2.12。我有两个本地数据库,“base1”和“base2”
我想将所有数据(所有集合)从base1复制到base2,替换那里的所有内容(比如将生产转储到开发环境时)。
执行此操作的任何管道命令(或其他简单方法)?
我试过
mongodump --archive --db base1 | mongorestore --db base2 --archive
列出了很多“在stdout上写入base2.collectionname”,但没有任何内容写入base2。
我也试过
mongodump --db base1 --gzip --archive=/path/to/file.gz
mongorestore --db base2 --gzip --archive=/path/to/file.gz
转储工作,恢复只是说“为归档创建意图”,“完成”
答案 0 :(得分:0)
我使用以下命令:
request(options, function(error, response, html) {
if (!error && response.statusCode == 200) {
var productData = {};
// access html with JQUERY
var $ = cheerio.load(html);
// is it possible to access global
// page variables here ?
}
}
和
mongodump \
--host ${mongo.host} \
--port ${mongo.port} \
--username ${mongo.backup_restore_user} \
--password ${mongo.backup_restore_password} \
--db ${mongo.db} \
--gzip \
--dumpDbUsersAndRoles \
--archive=${archive}
答案 1 :(得分:0)
我遇到了同样的问题,经过谷歌搜索和搜索后,我发现了这篇文章 https://stackoverflow.com/a/43810346/3785901
我尝试了以下命令:
mongodump --host HOST:PORT --db SOURCE_DB --username USERNAME --password PASSWORD --archive | mongorestore --host HOST:PORT --nsFrom 'SOURCE_DB.*' --nsTo 'TARGET_DB.*' --username USERNAME --password PASSWORD --archive --drop
,它就像一种魅力。 它应该适合您的情况,祝您好运。