ubuntu

MongoDB Ubuntu版如何进行备份配置

小樊
38
2025-08-26 00:03:39
栏目: 云计算

以下是Ubuntu版MongoDB的备份配置步骤,涵盖基础备份、定时备份及验证等关键操作:

  1. 安装备份工具

    sudo apt update  
    sudo apt install mongodb-tools  # 或 mongodb-org-tools  
    
  2. 基础备份命令

    • 全量备份
      mongodump --host localhost --port 27017 --out /path/to/backup/$(date +%Y%m%d%H%M%S)  # 指定目录  
      
    • 备份特定数据库/集合
      mongodump --db your_db --collection your_collection --out /path/to/backup/  # 指定数据库/集合  
      
    • 认证备份(若启用认证):
      mongodump --username admin --password 123456 --authenticationDatabase admin --out /path/to/backup/  # 添加认证参数  
      
  3. 压缩备份文件

    tar -czvf /path/to/backup/$(date +%Y%m%d%H%M%S).tar.gz /path/to/backup/$(date +%Y%m%d%H%M%S)  # 压缩目录  
    
  4. 定时备份(Cron配置)

    • 编辑定时任务:
      sudo crontab -e  
      
    • 添加任务(如每天凌晨2点全量备份):
      0 2 * * * /usr/local/bin/mongodb_backup.sh >> /var/log/mongodb_backup.log 2>&1  # 调用脚本  
      
    • 示例脚本(含全量+增量逻辑,参考):
      #!/bin/bash  
      BACKUP_BASE="/backup/mongodb"  
      DATE=$(date +%Y%m%d)  
      FULL_BACKUP="$BACKUP_BASE/full"  
      INCREMENTAL_BACKUP="$BACKUP_BASE/incremental_$DATE"  
      mkdir -p $FULL_BACKUP $INCREMENTAL_BACKUP  
      mongodump --out $FULL_BACKUP  # 首次全量备份  
      mongodump --oplog --out $INCREMENTAL_BACKUP  # 后续增量备份(需结合oplog)  
      
  5. 验证备份

    mongorestore --dryRun /path/to/backup/your_backup_dir  # 模拟恢复,检查数据完整性  
    
  6. 清理过期备份

    find /path/to/backup -name "*.tar.gz" -mtime +7 -exec rm {} \;  # 保留最近7天备份  
    

关键说明

参考来源:

0
看了该问题的人还看了