如何通过mongodump排除GridFS的fs.chunks与fs.files集合?
使用mongodump排除GridFS集合的方法
要在mongodump备份时跳过GridFS对应的fs.chunks和fs.files集合,直接用工具自带的排除参数即可,分两种场景处理:
1. 精准排除默认前缀的GridFS集合
如果你的GridFS用的是默认的fs前缀,直接在mongodump命令里多次使用--excludeCollection参数,分别指定两个集合:
# 备份指定数据库mydb,排除fs.chunks和fs.files mongodump --db mydb --excludeCollection fs.chunks --excludeCollection fs.files
要是需要备份所有数据库,但只想排除某个库下的这两个集合,必须加上--db参数限定数据库,否则会排除所有库中同名的集合。
2. 批量排除自定义前缀的GridFS集合
如果你的GridFS用了自定义前缀(比如docs、media这类),可以用--excludeCollectionsWithPrefix参数批量排除前缀匹配的集合:
# 备份mydb库,排除所有以docs.开头的集合(即docs.chunks和docs.files) mongodump --db mydb --excludeCollectionsWithPrefix docs.
额外注意事项
- 参数版本要求:
--excludeCollection从MongoDB 3.0开始可用,--excludeCollectionsWithPrefix从3.4版本开始支持,确保你的mongodump版本符合要求。 - 远程连接场景:如果连接远程MongoDB实例,记得补充连接相关参数,比如:
mongodump --host mongodb://your-user:your-pass@remote-host:27017 --db mydb --excludeCollection fs.chunks --excludeCollection fs.files
内容的提问来源于stack exchange,提问作者Daniel
相关产品推荐
相关产品推荐

