mongodb备份脚本

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

Leave a Reply

Your email address will not be published. Required fields are marked *