MongoDB导出含敏感信息的system.users集合失败及认证问题求助
解决方案
1. 修复认证错误
你的MongoDB无密码认证,执行mongodump时需注意:
- 完全移除所有认证参数(
-u、-p),避免触发不必要的认证流程。 - 检查MongoDB服务配置文件(
mongod.conf),确保security.authorization设置为disabled;若之前开启过认证,修改后重启mongod服务。 - 正确的无认证基础导出命令(导出除
system.users外的集合):
mongodump --host localhost --port 27017 --db database --out /path
2. 导出自定义的system.users集合
默认情况下,mongodump会自动跳过名称以system.开头的集合(即使是你自定义的业务集合),需显式指定该集合才能导出:
mongodump --host localhost --port 27017 --db database --collection system.users --out /path
如果需要一次性导出全部10个集合(含system.users),可使用以下命令取消默认的system.*集合排除规则:
mongodump --host localhost --port 27017 --db database --excludeCollectionsWithPrefix "" --out /path
额外说明
你数据库中的system.users是自定义业务集合(从文档的_class字段可判断),并非MongoDB内置的认证用户集合,因此需要显式指定才能被mongodump识别导出。
内容的提问来源于stack exchange,提问作者harish nune
相关产品推荐
相关产品推荐

