一个db的Mongorestore给我带来麻烦
我是MongoDB的新手,我很难备份我的本地数据库,并在我的服务器上恢复。 我在Mongo的网站上find了链接: http : //www.mongodb.org/display/DOCS/Import+Export+Tools,但是我仍然遇到了还原问题。
当我做我的备份,我打电话
mongodump --db Gen  然后我看到所有的集合都转储到/bin/dump/Gen文件夹中 
我复制粘贴从本地到服务器在同一个文件夹中的调用
 mongorestore --db Gen --drop --dbpath dump/Gen 
 但是我得到以下Error : root directory must be a dump of a single database when specifying a db name with --db : Error : root directory must be a dump of a single database when specifying a db name with --db 
好吧,我发现我做错了什么:
我在做
 mongorestore --db Gen --drop --dbpath dump/Gen 
但没有 – dbpath它工作得很好!
 mongorestore --db Gen --drop dump/Gen 
感谢大家!
我认为你的文件夹结构可能会越来越乱,当你试图移动它。 例如,这对我有用:
 $ ./mongodump --db Gen $ ./mongorestore --db Gen --drop dump/Gen/ 
你可以尝试不移动转储目录,并从/ bin / dump / Gen恢复?
你指定的目录应该有.bson文件,例如,
 $ ls /bin/dump/Gen foo.bson bar.bson baz.bson 
对于不想受到错误“根目录”烦恼的人来说,当使用–db指定db名称时,必须是单个数据库的转储。
当指定–db和没有–collection(恢复整个数据库)时: – 给定的path必须是目录path – 目录不能包含比.bson或.json更多的文件。 我花了一段时间才意识到隐藏的.svn文件夹(如果你使用SVN)会搞乱脚本
 这是什么结束了为我工作( mydb是我的数据库的名称): 
 mongorestore --drop -db mydb mydbbackup/mydb/ 
 在我的mongodump : 
 mongodump -d mydb -o mydbbackup 
例:
 ./mongorestore -d db -c mycollection dump/db 
会引发下面的错误
 ERROR: ERROR: root directory must be a dump of a single collection ERROR: when specifying a collection name with --collection 
你可以删除-c选项来减less这个错误。因为dump / db指定了db,但是不能收集。