【问题标题】:mongorestore error: Don't know what to do with the dump file [closed]mongorestore 错误:不知道如何处理转储文件 [关闭]
【发布时间】:2014-02-09 13:56:27
【问题描述】:

我在以下路径c:\mongodb\bin 中安装了 mongo DB。我已经在高级设置中配置了我的环境变量 PATH。我还运行了 mongod。当我从以下路径 c:\hw1-1\dump 运行以下命令 mongorestore dump (这包含 BSON 文件)我得到这个错误:

不知道如何处理转储文件

我已参考this thread 来检查我的路径。

【问题讨论】:

  • 所有答案都不同,因为所有这些错误实际上意味着您的某些标志不正确。哪些标志不正确将取决于您的还原内容和还原位置。使用mongodump --help 获取实例上当前标志的列表以调试此问题。

标签: mongodb mongo-shell


【解决方案1】:

在mongodb 3.0或以上版本中,我们应该指定要恢复的数据库名称

mongorestore -d [your_db_name] [your_dump_dir]

【讨论】:

  • 我使用的是 Windows 3.0.3 版并指定数据库名称为我完成了!谢谢@clevertension。
  • 在 3.0.6 上也表现出色。
  • 这是我升级mongodb-tools后遇到的问题,谢谢!
  • 这对我有用,像这样使用身份验证:mongorestore -u k00k -p 1337p455w0rd -d mydb ./dump/mydb
  • 这是一个旧答案。在较新的版本中,在许多情况下您无法指定 --db (-d) 参数。这就是我目前恢复它的方式:mongorestore --nsFrom=fromdbname.* --nsTo=todbname.* yourdumpfolder/ 此外,当您使用 gzip 时,您需要提供 --gzip 参数,如果您想覆盖某些内容,您可以添加 --drop 参数。
【解决方案2】:

你可能看到了这个错误:

错误:不知道如何处理文件 [dump]

这意味着在这种情况下,您当前的工作目录中没有名为dump 的文件或目录。所以,先试试这个cd c:/hw1-1/(或者Windows上的任何正确语法,我无法测试它。)或者你可以指定dump目录的完整路径:

mongorestore c:/hw1-1/dump

【讨论】:

  • 谢谢你 c:/hw1-1 mongorestore 转储工作正常..
  • 这个命令结合 uri 连接字符串对我有用。
【解决方案3】:

如果您使用mongoexport 创建转储,请务必使用mongoimport 而不是mongorestore 来加载它。

【讨论】:

  • 是的,这是我的魔杖,因为我使用了mongoexport。 tnx
【解决方案4】:

如果您的 BSON 文件没有 .bson 文件扩展名,也会出现此错误消息“不知道如何处理文件”。

通常这不是问题,因为mongodump 生成带有 .bson 扩展名的文件,但在我的情况下,我有一个不是由 mongodump 生成的 BSON 文件,并且具有不同的文件扩展名。

【讨论】:

  • 你如何恢复没有 .bson 扩展名的文件? (在我的例子中是 .rdb)
  • 我在文件 with .bson 扩展名:don't know what to do with file "dump/mydb/users.bson", skipping... 上遇到这个无益的错误
【解决方案5】:

我在version 3.2 windows 上,而我的mongorestore 似乎有错误:

如果我指定 /db:database_name/d database_name 我会收到错误:

don't know what to do with subdirectory "dump\database_name", skipping...

相反,如果我让它在整个转储目录上运行,它似乎可以工作。我使用的命令是:

mongorestore /host:remote_host dump

我当前的目录结构是:

.
..
dump
dump\database_name

【讨论】:

  • 爱你,我只需要在顶部添加一个额外的目录就可以了,哈哈
【解决方案6】:

当我有一个与我试图在 Mongo 中恢复的集合匹配的集合时遇到此错误,最终进入 Mongo 并使用 db.m101.drop() 删除它;

【讨论】:

    【解决方案7】:

    在我不断收到此错误一段时间后,我花了一些时间才弄清楚 mongorestore 的选项。

    a) 没有正在运行的 mongod 实例。

    b)mongorestore -v -host localhost:27017 --dbpath "Actual Path for the Mongo DB- set in config" "Location where the dump is"

    使用 dbpath ,允许在没有任何运行版本的 mongod 的情况下运行此命令。 这解决了我的错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-18
      • 1970-01-01
      • 2021-11-26
      • 1970-01-01
      • 1970-01-01
      • 2023-01-24
      • 2013-05-12
      相关资源
      最近更新 更多