MongoDB备份教程常见问题排查手册

2026-10-30 来源: 点击量

MongoDB 备份教程常见问题排查手册

一、备份前必做检查

磁盘空间:目标目录剩余空间建议至少为数据库大小的 3 倍,避免备份中途因 /tmp 或目标盘满而失败。

连接验证:先用 mongosh 测试连接和认证,确认能执行 ping 命令。

oplog 窗口:副本集备份前检查 rs.printReplicationInfo(),确保 oplog 能覆盖整个备份周期。

工具版本:确认 mongodump/mongorestore 版本与目标 MongoDB 服务器版本匹配。MongoDB备份教程常见问题排查手册

二、认证与权限问题

报错:not authorized on admin to execute command { listDatabases: 1 }

排查:

服务器 root 用户不等于 MongoDB 认证用户,必须通过 -u、-p、--authenticationDatabase 显式认证。

确认 authSource 正确,用户创建在哪个库,--authenticationDatabase 就填哪个库。

密码含 @、# 等特殊字符时,连接字符串中需 URL 编码,如 @ 写成 %40。

备份全库需要 backup 或 root 角色;只备份单个库可用该库的 read 角色。

分片集群中 root 角色也可能无法访问 config 库,需单独确认权限。

三、版本兼容问题

报错:恢复失败、静默失败或元数据损坏。

排查:

mongodump/mongorestore 要求源和目标 MongoDB 主版本一致,或 featureCompatibilityVersion 一致。

5.0 及以上版本导出的 capped collection、时序集合,无法恢复到低于 5.0 的目标库。

高版本向低版本迁移时,Decimal128 等类型可能不被支持,需提前转换。

工具版本应与服务器版本对应,Docker 环境尤其容易因宿主机与容器版本不一致而出错。

目标库若开启 Schema Validation,导入不符合约束的数据会被拒绝,可临时关闭验证再恢复。

四、备份数据不完整或恢复后数据对不上

现象:恢复后文档数量不对、索引丢失、集合缺失。

排查:

mongodump 默认不包含 local 库内容,副本集配置信息不会随备份迁移。

mongorestore 只执行插入,不更新已有文档;相同 _id 的文档不会被覆盖。

索引会在恢复后重建,恢复完成初期查询可能较慢。

5.0 起文档字段名允许以 $ 开头,但 mongodump/mongorestore 对这类字段存在限制。

恢复后建议做文档数量比对和内容抽样校验。

五、性能抖动与备份失败

现象:备份期间数据库响应变慢,或备份任务中断。

排查:

mongodump 会消耗内存和 IO,数据量超过系统内存时可能把工作集挤出内存。

副本集环境建议从 secondary 节点备份,避免影响主库。

分片集群备份需先禁用 balancer,并在各 shard 和 config server 近似同时采集快照。

磁盘空间不足会导致备份或 oplog 回放失败。

使用 Ops Manager 时,Backup Agent 必须持续运行,Agent 宕机或无法连接副本集都会导致备份失败。

六、Docker / 容器环境常见问题

现象:备份文件为空、恢复报错或认证失败。

排查:

docker exec 执行 mongodump 时不要加 -t,避免伪终端污染输出。

mongorestore 从 stdin 读取时,docker exec 需要加 -i,docker compose exec 需要加 -T。

容器内开启认证时必须指定 --authenticationDatabase,否则会报认证失败。

容器内外 mongodump/mongorestore 版本要一致。

七、物理文件备份注意事项

使用 cp、rsync 复制数据文件前必须停写,否则可能得到不一致快照。

文件系统快照备份要求 journaling 开启,且 journal 与数据文件在同一逻辑卷。

冷备份恢复后需检查文件所有权,避免 root 创建的文件导致 mongod 启动失败。

物理备份不包含 oplog 回放能力,副本集时间点恢复能力弱于逻辑备份。

八、云数据库备份排查要点

云 MongoDB 通常支持自动备份、手动备份、整实例回档、库表回档和按 Key 闪回。

恢复新实例时大版本需与原实例一致,旧版本备份通常不能恢复到新版本实例。

回档耗时取决于需回放的 oplog 数据量,距离全量备份越远耗时越长。

含时序集合的实例按时间点恢复可能在 oplog 回放阶段遇到问题。

相关文章
  • MongoDB备份教程常见问题排查手册
    MongoDB备份教程常见问题排查手册

    MongoDB 备份教程常见问题排查手册一、备份前必做检查磁盘空间:目标目录剩余空间建议至少为数据库大小的 3 倍,避免备份中途因 /tmp 或目标盘满而失败。连接验证:先用 mongosh 测试连接和认证,确认能执行 ping 命令。oplog 窗口:副本集备份前检查 rs.printReplication...

  • 【干货】SQL优化方法优化技巧,性能提升10倍
    【干货】SQL优化方法优化技巧,性能提升10倍

    SQL 优化真正拉开差距的地方,不是背规则,而是先看懂执行计划,再减少数据库做的工作量。 下面这套方法适用于 MySQL、PostgreSQL、SQL Server 等主流数据库,按“诊断 → 改写 → 索引 → 架构”推进。 一、先诊断:不要凭感觉优化优化前先看三个数据源:慢查询日志...

  • Redis集群思维导图详解:从理论到生产环境实践
    Redis集群思维导图详解:从理论到生产环境实践

    Redis 集群思维导图详解:从理论到生产环境实践一句话总纲:Redis 集群核心目标是分片扩容 + 高可用,主流三种方案:主从复制、哨兵 Sentinel、Redis Cluster(官方集群);生产优先 Cluster,哨兵适合中小规模读写分离,主从仅适合学习或简单备份。下面按照思维导图结构逐...

  • 【深入浅出】Elasticsearch安全教程,一文讲透核心原理
    【深入浅出】Elasticsearch安全教程,一文讲透核心原理

    【深入浅出】Elasticsearch 安全教程,一文讲透核心原理很多人上手 ES 第一步就是裸奔直接对外,这是最大隐患。ES 安全不只是加个账号密码,包含身份认证、授权、传输加密、审计、网络隔离、数据脱敏、集群防篡改整套体系,本文从原理到落地,适合运维、后端、...

  • HBase面试题常见问题排查手册
    HBase面试题常见问题排查手册

    HBase 面试题常见问题排查手册面向后端、大数据开发面试,分为:基础概念、读写原理、架构、RowKey 设计、预分区、版本与删除、集群运维、线上故障排查、对比题、高频手写题。每个问题附带【标准答案】+【面试加分点】,适合背诵 + 排查线上问题。 一、基础概...

  • 2026年AI数据库学习笔记最新趋势与技术选型
    2026年AI数据库学习笔记最新趋势与技术选型

    2026年AI数据库技术趋势与选型指南2026年AI数据库赛道正在经历一场从"专用向量库"到"多模融合底座"的架构重构。大模型推理成本骤降90%以上,AI应用从试点走向规模化,数据基础设施反而成了新的瓶颈——Gartner预测超60%的AI项目将因数据底座不足而失败。 下面从趋势...