繁体   English   中英

MongoDB使用查询将所有集合转储到数据库中

[英]MongoDB dump all collections in a database with query

我想在特定时间范围内在mongodb中转储数据。 转储一个集合正确。

mongodump --db VnTrader_Tick_ALL_1106 --collection au1712 --out tick_1106 --query "{ datetime: {$gte: new Date(1509973200000), $lt: new Date(1510038900000) }}"

我想知道如何通过同一查询将所有集合转储到数据库中? 非常感谢

我在Windows版本中没有答案。 但是我也遇到了这种情况,并在xargs的帮助下在Linux中使用以下命令来实现今天。

echo "show collections" | mongo <dbname> --quiet | grep -v "system.indexes" | xargs -I {} mongodump --db <dbname> --collection {} --query "{}"

我终于用navie实现解决了这个问题。

  1. 首先在python中使用正则表达式生成dumpcommond.txt文件。

    command_tick ='mongodump'+'--db'+ HOST_TICK_DB +'--collection'+合同+'--out tick_remote_1'+ \\'--query“ {datetime:{$ gte:new Date('+ ds_time +' ),$ lt:new Date('+ de_time +')}}“”',其中open(MONGODB_BIN_PATH +'\\ dumpcommond.txt','a')作为myfile:myfile.write(commandtick +'\\ n')

  2. 在mongo / bin中打开一个cmd

  3. 复制并删除dumpcommond.txt cmd中的所有命令以获取所有集合

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM