centos

CentOS系统MongoDB备份配置策略

小樊
44
2025-11-17 19:49:44
栏目: 云计算

CentOS 上 MongoDB 备份配置策略

一 策略总览与保留建议

二 自动化备份脚本与定时任务

#!/usr/bin/env bash
set -Eeuo pipefail

# 配置
BACKUP_ROOT="/backups/mongodb"
DATE=$(date +%Y%m%d_%H%M%S)
OUT_DIR="$BACKUP_ROOT/full_$DATE"
RETENTION_DAYS=14

# 创建目录
mkdir -p "$OUT_DIR"

# 执行备份(可按需添加 --uri、--gzip、--oplog 等)
mongodump \
  --uri "mongodb://backup_user:backup_pass@127.0.0.1:27017/admin?authSource=admin" \
  --out "$OUT_DIR" \
  --gzip

# 校验并清理
if compgen -G "$OUT_DIR/*.bson.gz" > /dev/null; then
  echo "Backup succeeded: $OUT_DIR"
  # 清理过期
  find "$BACKUP_ROOT" -mindepth 1 -maxdepth 1 -type d -mtime +$RETENTION_DAYS -exec rm -rf {} +
else
  echo "Backup failed: no .bson.gz found in $OUT_DIR" >&2
  exit 1
fi

三 副本集时间点备份与增量恢复

四 备份验证与运维要点

五 方法对比与选型建议

方法 适用场景 优点 局限
mongodump 中小规模、灵活恢复 易用、按库/集合导出、支持 –gzip 大库性能较低、恢复较慢
mongoexport 导出 JSON/CSV 供外部系统使用 格式通用、便于数据交换 非整库恢复、类型信息有限
文件系统快照(LVM/ZFS/EBS) 大库、快速恢复 备份/恢复快、一致性好 依赖底层存储、操作需谨慎
Atlas 备份 云上托管 自动全量/增量、控制台一键恢复 云环境限定、成本因素
Percona Backup for MongoDB 企业级备份 支持全量+增量、生态完善 需额外部署与学习成本

0
看了该问题的人还看了