11

我想导出非常大的集合并将它们导入另一台服务器的另一个数据库中。我发现至少有两种方法:mongoexportmongodump

我搜索了有关此问题的先前帖子,但是我没有找到关于使用这两种方式的导出速度和导出文件大小的完整比较/基准!如果有任何经验可以分享,我将不胜感激。

4

2 回答 2

11

如最新文档中所述

避免使用 mongoimport 和 mongoexport 进行完整实例生产备份。它们不能可靠地保留所有丰富的 BSON 数据类型,因为 JSON 只能表示 BSON 支持的类型的子集。使用 MongoDB 备份方法中所述的 mongodump 和 mongorestore 来实现此类功能。

由于您需要恢复大数据,因此首选转储。

mongoexport 是一个命令行工具,可以生成存储在 MongoDB 实例中的数据的 JSON 或 CSV 导出。

mongodump 是用于创建数据库内容的二进制导出的实用程序。mongodump 可以从 mongod 或 mongos 实例中导出数据;ie 可以从独立、副本集和分片集群部署中导出数据。

于 2020-09-03T09:37:24.933 回答
1

重要的区别之一是 mongodump 比 mongoexport 用于备份目的更快。Mongodump 将数据存储为二进制文件,而 mongoexport 将数据存储为 JSON 或 CSV。

于 2020-09-05T16:00:42.230 回答