我执行以下操作:
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
导入的数据不完整。我做错了什么?
答案 0 :(得分: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,则还应同时升级本地计算机。