MongoDB备份自动化可通过以下步骤实现:
编写备份脚本:使用mongodump
命令备份数据,结合tar
压缩备份文件,示例脚本如下:
#!/bin/bash
BACKUP_DIR="/path/to/backup"
DATE=$(date +%Y%m%d%H%M%S)
MONGO_HOST="localhost"
MONGO_PORT="27017"
MONGO_USER="username"
MONGO_PASSWORD="password"
mkdir -p $BACKUP_DIR
mongodump --host $MONGO_HOST --port $MONGO_PORT --username $MONGO_USER --password $MONGO_PASSWORD --out $BACKUP_DIR/$DATE
tar -czf $BACKUP_DIR/$DATE.tar.gz -C $BACKUP_DIR $DATE
rm -rf $BACKUP_DIR/$DATE
(参考)
设置定时任务:通过crontab
配置定期执行脚本,例如每天凌晨2点备份:
sudo crontab -e
# 添加以下内容
0 2 * * * /path/to/backup_script.sh
(参考)
可选:使用编程语言实现
pymongo
连接数据库,调用subprocess
执行mongodump
命令。exec()
函数调用系统命令实现备份逻辑。验证与监控:手动运行脚本测试备份是否正常,检查备份文件完整性,并通过日志记录备份过程(可在脚本中添加echo
或日志文件输出)。
注意:确保备份目录权限正确,敏感信息(如密码)可通过环境变量或配置文件管理,避免硬编码在脚本中。