一个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,但是不能收集。