【发布时间】:2020-09-03 08:37:34
【问题描述】:
我想导出非常大的集合并将它们导入到另一台服务器的另一个数据库中。我发现至少有两种方法:mongoexport 和 mongodump。
我搜索了有关此问题的先前帖子,但是我没有找到关于使用这两种方式导出速度和导出文件大小的完整比较/基准! 如果有任何经验可以分享,我将非常感激。
【问题讨论】:
标签: mongodb mongodb-query mongodump
我想导出非常大的集合并将它们导入到另一台服务器的另一个数据库中。我发现至少有两种方法:mongoexport 和 mongodump。
我搜索了有关此问题的先前帖子,但是我没有找到关于使用这两种方式导出速度和导出文件大小的完整比较/基准! 如果有任何经验可以分享,我将非常感激。
【问题讨论】:
标签: mongodb mongodb-query mongodump
如最新documentation中所述
避免使用 mongoimport 和 mongoexport 进行完整实例生产备份。它们不能可靠地保留所有丰富的 BSON 数据类型,因为 JSON 只能表示 BSON 支持的类型的子集。使用 MongoDB 备份方法中所述的 mongodump 和 mongorestore 来实现此类功能。
由于需要恢复大数据,首选dump。
mongoexport 是一个命令行工具,可生成存储在 MongoDB 实例中的数据的 JSON 或 CSV 导出。
mongodump 是一个用于创建数据库内容的二进制导出的实用程序。 mongodump 可以从 mongod 或 mongos 实例中导出数据;即可以从独立、副本集和分片集群部署中导出数据。
【讨论】:
mongodump 可能通常更可取。
其中一个重要的区别是 mongodump 比 mongoexport 用于备份目的更快。 Mongodump 将数据存储为二进制文件,而 mongoexport 将数据存储为 JSON 或 CSV。
【讨论】: