将 MMAPv1 生成的数据迁移到 WiredTiger

migrate the MMAPv1 generated data to WiredTiger

我正在 运行使用 mongodb 3.0 作为数据库创建一个 (keystonejs) webapp。我使用 3.2 mongodb 版本克隆了 webapp 和 运行 第二个实例(在已生成但仍为空的数据库上)。我现在需要做的是将数据从第一个数据库获取到第二个。由于 mongodb 3.2 使用不同的默认存​​储引擎 WiredTiger,因此克隆使用该引擎。然而,原始应用程序使用 MMAPv1。有没有简单的方法可以将 MMAPv1 创建的数据迁移到 WiredTiger?

使用 mongodump 在旧服务器上创建数据库备份,使用 mongorestore 将其恢复到新服务器,完成。文档中对此进行了很好的介绍。

https://docs.mongodb.org/manual/tutorial/change-standalone-wiredtiger/

您可以创建副本集并向其中添加新机器。这样做,您将在较新的服务器上获得最新数据。复制结束后,如果需要,将新机器切换为主服务器并关闭旧服务器。通过这种方式,您可以轻松地将现有数据克隆到 wiredTiger,而不会丢失数据或对现有应用程序产生负面影响。