mongodb使用一个命令恢复多个集合
如何在mongodb中一次恢复多个集合。 我试过了mongodb使用一个命令恢复多个集合,mongodb,Mongodb,如何在mongodb中一次恢复多个集合。 我试过了 mongorestore -c Role -c UserAccount -c Permission -d movie-app dump/ 我得到一个错误文件转储是一个目录,而不是bson文件 我可以一次恢复单个集合,但必须指定bson文件,如 mongorestore -c UserAccount -d movie-app dump/movie-app/UserAccount.bson 我需要知道如何用一个命令还原多个集合。在v3.
mongorestore -c Role -c UserAccount -c Permission -d movie-app dump/
我得到一个错误文件转储是一个目录,而不是bson文件
我可以一次恢复单个集合,但必须指定bson文件,如
mongorestore -c UserAccount -d movie-app dump/movie-app/UserAccount.bson
我需要知道如何用一个命令还原多个集合。在v3.4中,您可以使用
--nsExclude
和/或--nsInclude
选项创建--collection
选项功能的超集
例如:
// only restore documents in the transactions database
// and exclude collections whose name ends with "_dev"
mongorestore --nsInclude 'transactions.*' --nsExclude 'transactions.*_dev' dump/
更多详情请参阅
更新回应此评论:
嗯,但是我要恢复的集合名称没有任何类似的模式可以使用通配符
如果您不想还原的集合名称可以使用通配符模式隔离,那么您可以使用
--nsExclude
。如果不是,则mongorestore
无法在单个调用中执行您想要的操作,因此您可以在批处理或shell脚本的循环中调用mongorestore
,为要还原的每个集合名称调用一次mongorestore
。根据mongo Documentation-mongorestore-端口引用URL,该URL是如何还原完整数据库的,但是我只想还原一些集合。嗯,但是我要还原的集合名称没有任何类似的模式可以使用通配符。我可以简单地多次调用--nsInclude
(或--nsExclude
)吗?@toto_tico是的,根据。