You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

mongorestore恢复故障:无法处理子目录问题求助

解决mongorestore恢复mLab远程MongoDB时跳过子目录的问题

看起来你遇到的问题是mongorestore没法识别dump目录里的子文件夹,导致跳过了需要恢复的数据。我来帮你梳理下原因和解决办法:

问题原因

你执行的命令指定了要恢复到loc8r数据库,但mongorestore默认会在dump目录下寻找同名的子目录(也就是dump/loc8r),而你的dump目录里实际是dump/Loc8r(首字母大写)和dump/admin,名称不匹配,所以工具不知道该把哪个目录的数据恢复到loc8r,只能跳过这些子目录。

解决方案

根据你的需求,有两种处理方式:

1. 仅恢复Loc8r数据到mLab的loc8r数据库

修改命令,通过--dir参数明确指定要恢复的子目录路径,同时保持-d loc8r指定目标数据库:

./mongorestore -h ds*****.mlab.com:**** -u <user> -p <pass> -d loc8r --dir ./dump/Loc8r

注意:Windows系统下路径分隔符用\,可以写成--dir .\dump\Loc8r

2. 恢复dump目录下的所有数据库(包括admin)

如果需要恢复所有备份的数据,去掉-d loc8r参数,直接指定dump目录即可,mongorestore会自动根据子目录名创建对应数据库:

./mongorestore -h ds*****.mlab.com:**** -u <user> -p <pass> ./dump

额外提示

  • 确认mLab上的数据库权限:确保你的用户账号有loc8r数据库的写入权限,否则可能会出现权限错误
  • 路径大小写:MongoDB在类Unix系统上对路径大小写敏感,Windows下不敏感,但为了避免问题,尽量保持命令中的路径和实际目录名一致

内容的提问来源于stack exchange,提问作者Huy Nguyen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:01:11