我想将我的mongodb从2.0迁移到3.0.所以我按照官方文档使用mongodump备份我的dbs并使用mongorestore将dbs恢复到mongodb 3.0.
但是当我使用mongorestore时,它告诉我"不知道如何处理文件"db/collection.bson",跳过......".
没事做.我怎么能迁移我的dbs?
谢谢.
编辑:这是我的步骤.
在mongodb 2.0中使用mongodump
mongodump
tree dump
db
??? collection-1.bson
??? collection-2.bson
??? collection-3.bson
??? ...
Run Code Online (Sandbox Code Playgroud)
将db目录复制到mongodb 3.0服务器.
在mongodb 3.0服务器上调用 mongorestore db
但我得到这个错误:
mongorestore db
2015-03-10T09:36:26.237+0800 building a list of dbs and collections to restore from db dir
2015-03-10T09:36:26.237+0800 don't know what to do with file "db/collection-1.bson", skipping...
2015-03-10T09:36:26.237+0800 don't know what to do with file "db/collection-2.bson", skipping...
2015-03-10T09:36:26.237+0800 don't know what to do with file "db/collection-3.bson", skipping...
...
2015-03-10T09:36:26.237+0800 done
Run Code Online (Sandbox Code Playgroud)
小智 89
似乎必须在3.0中指定-d,如下所示:
mongorestore -d db db
Run Code Online (Sandbox Code Playgroud)
Art*_*nko 21
这个答案与你的问题没有直接关系,但是你会收到同样的错误输出,试图恢复mongo数据,转储--archive选项,自MongoDB 3.2版以来可用.要解决此问题,您需要--gzip在mongorestore命令中指定参数.例:
mongorestore -d destination_db --gzip /path/to/source/db
Run Code Online (Sandbox Code Playgroud)
小智 6
如果您丢失了 mongoDb,请尝试运行以下命令:
mongorestore -d destination-db --gzip source-db
Run Code Online (Sandbox Code Playgroud)
在哪里:
destination-db 是目标数据库的名称source-db 是源数据库的名称。