将mongodb从v3.2.10降级到v2.4.9,保留相同的数据文件

将mongodb从v3.2.10降级到v2.4.9,保留相同的数据文件,mongodb,Mongodb,我使用WiredTiger从MongoDB v3.2.10安装中获得了/data/db文件。如何在ubuntu上运行MongoDB v2.4.9,使其能够使用/data/db中的相同数据文件 仅供参考,我已将/data/db复制到新的mongodb目录,但它没有工作。要导入数据路径,可以在初始化它时将dbpath标志传递给mongodb守护进程。例如: mongod --dbpath /data/db mongorestore --db yourDB /data/db 如果要还原以前的mon

我使用WiredTiger从MongoDB v3.2.10安装中获得了/data/db文件。如何在ubuntu上运行MongoDB v2.4.9,使其能够使用/data/db中的相同数据文件


仅供参考,我已将/data/db复制到新的mongodb目录,但它没有工作。

要导入数据路径,可以在初始化它时将dbpath标志传递给mongodb守护进程。例如:

mongod --dbpath /data/db
mongorestore --db yourDB /data/db
如果要还原以前的mongodb转储文件,可以使用mongorestore选项。例如:

mongod --dbpath /data/db
mongorestore --db yourDB /data/db
这将把/data/db恢复到一个名为yourDB的新数据库中


希望我的回答有帮助。

否:这些文件不兼容,因为它们来自不同的存储引擎

您的v.3.2安装正在使用运行;这就是数据文件扩展名为.wt的原因。这只是,;在此之前,唯一可用的存储引擎是

因此,MongoDB v2.4.9只能使用MMAPv1数据文件运行;当您向它提供WiredTiger数据文件时,它不知道如何处理这些文件,因此失败

如果必须降级,则需要使用mongodump将数据从一个存储引擎转换为另一个存储引擎:

  • 使用WiredTiger数据文件运行MongoDB v3.2.10
  • 运行以生成整个数据库的BSON转储
  • 安装MongoDB v3.2.10
  • 安装MongoDB v2.4.9
  • 运行以将BSON文件中的数据导入MMAPv1数据存储引擎

  • 谢谢你的快速回复。当我按照您的建议键入命令mongorestore--db yourDB/data/db时,它会提示“不知道如何处理文件******.wt”;但是myDB中有两个集合存储和system.Index。但是,我找不到我的数据,谢谢。@suoyong如果您有以.wt结尾的文件,这些文件不是来自a的BSON文件。您正在安装哪个新的db版本?旧版本是什么?我的旧版本是3.2.10,新版本是2.4.9。你正在从3.2.10降级到2.4.9?尽管听起来非常有趣,但的确如此。看看