Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MongoDB失败:can';t从路径dump:stat dump:no创建ActualPath对象_Mongodb_Ubuntu_Database Restore_Mongorestore_Database - Fatal编程技术网

MongoDB失败:can';t从路径dump:stat dump:no创建ActualPath对象

MongoDB失败:can';t从路径dump:stat dump:no创建ActualPath对象,mongodb,ubuntu,database-restore,mongorestore,database,Mongodb,Ubuntu,Database Restore,Mongorestore,Database,我有一堆mongo数据库需要恢复。我使用mongodump获取备份目录,其中包括其中的集合。大概是这样的: |- mydir |-- db1 |--- collection1 |--- collections2 |-- db2 |--- collection1 |--- collections2 我将cd放入mydir并执行mongorestore操作,得到以下错误: 2016-07-25T10:41:12.378-0400 using default 'dump' directory

我有一堆mongo数据库需要恢复。我使用
mongodump
获取备份目录,其中包括其中的集合。大概是这样的:

|- mydir
|-- db1
|--- collection1
|--- collections2
|-- db2
|--- collection1
|--- collections2
我将
cd
放入
mydir
并执行
mongorestore
操作,得到以下错误:

2016-07-25T10:41:12.378-0400    using default 'dump' directory
2016-07-25T10:41:12.378-0400    Failed: can't create ActualPath object from path dump: stat dump: no such file or directory
然后,我尝试恢复一个特定的数据库,如下所示:
mongorestore db2
,并得到以下错误:

2016-07-25T10:47:04.413-0400    building a list of dbs and collections to restore from db2 dir
2016-07-25T10:47:04.413-0400    don't know what to do with file "db2/collection1.bson", skipping...
2016-07-25T10:47:04.413-0400    don't know what to do with file "db2/collection1.metadata.json", skipping..."db2/collection2.bson", skipping...
2016-07-25T10:47:04.413-0400    don't know what to do with file "db2/collection2.metadata.json", skipping...
2016-07-25T10:47:04.414-0400    done
无论我做什么或尝试什么,我都会在这两个错误之间交替。我使用的任何数据库都是一样的

我尝试使用
--db
标志和
-d
参数,将转储路径设置为第三个参数(
mongorestore--db[db][dump\u path]
)。我在Stackoverflow找到的一切。没什么

我被这件事缠住了,不知道该怎么办


编辑

操作系统:Ubuntu 14.04

按照本指南安装MongoDB:


mongorestore
如果没有dump\u path位置参数,则当前工作目录中应该有一个名为
dump
的文件夹。如果文件夹
dump
不存在,则会出现“无法创建实际路径…”错误

因此,基本上,如果没有名为dump的文件夹,则需要传递该位置参数。因此,从
mydir
run的父目录:

mongorestore mydir
如果要使用
--db
选项,则需要指定转储路径,直至包含该数据库的.bson文件的目录或特定的.bson文件

例如,要恢复
db1
的所有集合:

mongorestore --db db1 ./db1
或者只恢复
collection1

mongorestore --db db1 ./db1/collection1.bson

当然可以。请你也接受这个答案好吗。谢谢。即使mongodump的输出通过管道传输到mongorestore,转储目录是否仍在使用?