共计 621 个字符,预计需要花费 2 分钟才能阅读完成。
DUMP=/usr/local/mongodb/bin/mongodump #mongodump命令路径
OUT_DIR=/data/mongodb_bak/mongodb_bak_now #临时备份目录
TAR_DIR=/data/mongodb_bak/mongodb_bak_list #备份存放路径
DATE=`date +%Y_%m_%d_%H_%M` #获取当前系统时间
DB_USER=YOUR_DB_USERNAME #数据库账号
DB_PASS=YOUR_DB_USER_PASSWORD #数据库密码
DAYS=20 #DAYS=20代表删除20天前的备份,即只保留近20天的备份
TAR_BAK="mongodb_bak_$DATE.tar.gz" #最终保存的数据库备份文件
cd $OUT_DIR
rm -rf $OUT_DIR/*
mkdir -p $OUT_DIR/$DATE
$DUMP -h YOUR_DB_HOST -u $DB_USER -p $DB_PASS --authenticationDatabase "YOUR_DB_NAME" -o $OUT_DIR/$DATE #备份全部数据库
tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE #压缩为.tar.gz格式
find $TAR_DIR/ -mtime +$DAYS -delete #删除20天前的备份文件
exit
复制代码,命名为mongodb_bak.sh,加入系统定时任务。
crontab -e
正文完