备份sh.sh 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #!/bin/bash
  2. #backup MongoDB
  3. #mongodump命令路径
  4. DUMP=/usr/local/mongodb/backup/mongodump
  5. #临时备份目录
  6. OUT_DIR=/usr/local/mongodb/backup/mongodb_bak/mongodb_bak_now
  7. #备份存放路径
  8. TAR_DIR=/usr/local/mongodb/backup/mongodb_bak/mongodb_bak_list
  9. #获取当前系统时间
  10. DATE=`date +%Y_%m_%d`
  11. #数据库账号
  12. DB_USER=admin
  13. #数据库密码
  14. DB_PASS=admin
  15. #DAYS=15代表删除15天前的备份,即只保留近15天的备份
  16. DAYS=15
  17. #最终保存的数据库备份文件
  18. TAR_BAK="mongodb_bak_$DATE.tar.gz"
  19. cd $OUT_DIR
  20. rm -rf $OUT_DIR/*
  21. mkdir -p $OUT_DIR/$DATE
  22. #备份全部数据库
  23. $DUMP -d train -o $OUT_DIR/$DATE
  24. #压缩为.tar.gz格式
  25. tar -zcPvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE
  26. #删除15天前的备份文件
  27. find $TAR_DIR/ -mtime +$DAYS -delete
  28. exit
  29. #!/bin/bash
  30. while getopts ":a:b:" opt;do
  31. case $opt in
  32. a)
  33. file=$OPTARG
  34. ;;
  35. b)
  36. remark=$OPTARG
  37. ;;
  38. ?)
  39. echo "不使用的参数"
  40. exit 1;;
  41. esac
  42. done
  43. git add /usr/local/mongodb/backup/mongodb_bak/mongodb_bak_list/$file
  44. git commit -m $remark
  45. git push