1

我执行以下操作:

mongorestore  -d connect connect

在我的本地机器上,它工作正常。在我在亚马逊上的开发机器上,我从相同的命令、相同的数据库转储和相同版本的 mongodb(2.0.4)获得此输出:

don't know what to do with file [connect/connect/channels.metadata.json]
don't know what to do with file [connect/connect/movies.metadata.json]
Thu Dec 12 09:11:46 connect/connect/movies.bson
Thu Dec 12 09:11:46      going into namespace [connect.movies]
2667 objects found
Thu Dec 12 09:11:46 connect/connect/teams.bson
Thu Dec 12 09:11:46      going into namespace [connect.teams]
335 objects found
don't know what to do with file [connect/connect/broadcasts.metadata.json]
Thu Dec 12 09:11:46 connect/connect/channels.bson
Thu Dec 12 09:11:46      going into namespace [connect.channels]
82 objects found
don't know what to do with file [connect/connect/series.metadata.json]
Thu Dec 12 09:11:46 connect/connect/sportsevents.bson
Thu Dec 12 09:11:46      going into namespace [connect.sportsevents]
24 objects found

导入的数据不完整。我做错了什么?

4

1 回答 1

0

这些metadata.json文件仅在 MongoDB 2.2 或更高版本中创建,因此您mongodump的本地计算机上肯定有比开发计算机 (2.0.4) 更新的版本。

metadata.json文件包含有用的信息,例如索引定义和上限集合属性。如果您尝试使用旧版本的 进行还原mongorestore,它将不知道如何处理这些文件,因此您的还原将不会完成。如果您依赖于 MongoDB 的更新功能(例如聚合框架),这些功能在 MongoDB 2.0.x 中也将不可用。

您应该在 AWS 上升级您的开发机器以匹配您本地机器上的版本。如果您使用的不是该系列中最新的生产点版本的 2.2.x 或 2.4.x,您还应该同时升级您的本地计算机。

于 2014-01-04T01:32:00.553 回答