zoukankan      html  css  js  c++  java
  • dump备份mysql库

    Auth: Jin

    Date: 20140403

    Content: 

     1 #!/bin/bash -
     2 ### auth: Jin
     3 ### date: 20140402
     4 ### Desc: 根据配置文件里的ip,端口(dblist文件格式为192.168.201.245:3303:sso:root:passwd),数据库名dump备份mysql数据,清理指定天前的备份文件,通过ssh隧道追加同步到其他IDC服务器上
     5 ### Usage: ./dump_mysqldatabase.sh 
     6 
     7 BACKDIR=/data/BackupPC/database
     8 LIST=${BACKDIR}/dblist
     9 BACKUPLOG=${BACKDIR}/dump_mysqldatabase.log
    10 TODAY=`date +%F`
    11 DELDAY=`date -d "7 day ago" +%F`
    12 NUM=$(cat $LIST | wc -l)
    13 DUMPBIN=/usr/local/mysql/bin/mysqldump
    14 RSYNCBIN=/usr/bin/rsync
    15 
    16 function log ()
    17 {
    18 echo " " >> $BACKUPLOG
    19 echo "###########################" >> $BACKUPLOG
    20 echo "`date +%F/%T` $1" >> $BACKUPLOG
    21 echo "###########################" >> $BACKUPLOG
    22 }
    23 
    24 log START
    25 
    26 ### dump
    27 for (( i=1; i<=$NUM; i=i+1 ));do
    28         IP=$(sed -n "$i"p  $LIST | awk -F : '{print $1}')
    29         PORT=$(sed -n "$i"p  $LIST | awk -F : '{print $2}')
    30         DB=$(sed -n "$i"p  $LIST | awk -F : '{print $3}')
    31         USER=$(sed -n "$i"p  $LIST | awk -F : '{print $4}')
    32         PASSWD=$(sed -n "$i"p  $LIST | awk -F : '{print $5}')
    33         ${DUMPBIN} -h${IP} -P${PORT} -u${USER} -p${PASSWD} ${DB} --opt | gzip -9 > ${BACKDIR}/db-${TODAY}.${DB}.sql.gz
    34         if [ $? -eq 0 ];then
    35                 echo "${IP} ${PORT} ${DB} backup Sucessful" >> $BACKUPLOG
    36         else
    37                 echo "${IP} ${PORT} ${DB} backup Fail" >> $BACKUPLOG
    38         fi
    39 done
    40 
    41 ### delete
    42 for (( i=1; i<=$NUM; i=i+1 ));do
    43         DB=$(sed -n "$i"p  $LIST | awk -F : '{print $3}')
    44         rm -f ${BACKDIR}/db-${DELDAY}.${DB}.sql.gz
    45         if [ -f "${BACKDIR}/db-${DELDAY}.${DB}.sql.gz" ]; then
    46                 echo "${BACKDIR}/db-${DELDAY}.${DB}.sql.gz delete Fail" >> $BACKUPLOG
    47         else
    48                 echo "${BACKDIR}/db-${DELDAY}.${DB}.sql.gz delete OK" >> $BACKUPLOG
    49         fi
    50 done
    51 
    52 ### rsync to other IDC
    53 ${RSYNCBIN} -av -e"ssh" ${BACKDIR}/ root@10.1.0.22:${BACKDDIR}/
    54 if [ $? -eq 0 ];then
    55         echo "JQ IDC rsync to ZJ IDC OK" >> $BACKUPLOG
    56 else
    57         echo "JQ IDC rsync to ZJ IDC Fail" >> $BACKUPLOG
    58 fi
    59 
    60 log END
  • 相关阅读:
    通过网格拆分高德地图
    vue-router重定向 不刷新问题
    vue-scroller记录滚动位置
    鼠标滚轮更改transform的值(vue-scroller在PC端的上下滑动)
    position sticky的兼容
    js截图及绕过服务器图片保存至本地(html2canvas)
    禁止页面回退到某个页面(如避免登录成功的用户返回到登录页)
    手动创建script解决跨域问题(jsonp从入门到放弃)
    逻辑回归的常见面试点总结
    听说你不会调参?TextCNN的优化经验Tricks汇总
  • 原文地址:https://www.cnblogs.com/diege/p/3642966.html
Copyright © 2011-2022 走看看