mysql自动备份的脚步,这个脚步可以输入参数以实现是完整备份还有增量备份
 
  1. #!/bin/bash  
  2. echo -e "\033[31m please + f or d or i \033[0m"  
  3.  
  4. FULLBK () {  
  5.   mysqldump --triggers --lock-all-tables --all-databases >/root/`date "+%Y:%m:%d--%H:%M:%S"`.sql  
  6.   if [ $? == 0 ];then  
  7.       tar jcf  /root/`date "+%Y:%m:%d--%H:%M:%S"`.tar.bz2 /root/*.sql  
  8.       echo -e "\033[032m The backup is success....\033[0m"  
  9.          read -p "DO you want delete source file,y is "yes",other is "no": " A  
  10.          case $A in  
  11.          y|Y)  
  12.              rm -rf /root/*.sql  
  13.              echo -e "delete success....."  
  14.          ;;  
  15.          *)  
  16.               echo -e "you do nothing"  
  17.               return 2  
  18.         ;;  
  19.         esac  
  20.     else  
  21.       echo -e "\033[031m The backup is Failure....\033[0m"  
  22.   fi  
  23. }  
  24.    
  25. ############################################################################################33  
  26.    
  27. ZLBK (){  
  28.  ZB='mysql -e "SHOW MASTER STATUS" |grep mysql-bin |cut -f1' 
  29.    if false;then  
  30.     mysql -e "FLUSH LOGS;"  
  31.     mysql -e   "FLUSH TABLES WITH READ LOCK;"   
  32. #      read -p "please input you sql's data postion: " PT  
  33.     cp /data/mydata/$ZB /root/zback/  
  34.     tar jcf /root/`date "+%Y:%m:%d--%H:%M:%S"`.tar.bz2 /root/$ZB && echo "Failure..."  
  35.     mysql -e "UNLOCK TABLES;"  
  36.       else  
  37.             CYBK  
  38.    fi  
  39. }  
  40. #############################################################################################  
  41. CYBK () {  
  42.    rm -rf /root/cyback && mkdir /root/cyback  
  43.     mysql -e "FLUSH LOGS;"  
  44.     mysql -e "FLUSH TABLES WITH READ LOCK;"  
  45. # read -p "please input you sql's data postion: " PT  
  46.     cp /data/mydata/mysql-bin* /root/cyback/   
  47. #    tar jcf /root/cyback/* /root/cyback/`date "+%Y:%m:%d--%H:%M:%S"`.tar.bz2  
  48.     cd /root/cyback/  
  49.    tar jcf /mnt/`date "+%Y:%m:%d--%H:%M:%S"`.tar.bz2 ./*  
  50.      REL=$?  
  51.     rm -rf /root/cyback/mysql-bin*  
  52.     mysql -e "UNLOCK TABLES;"      
  53. }  
  54. # read -p "please input you sql's data postion: " PT  
  55. ##############################################################################################  
  56. while getopts ":fid:" OPTS; do  
  57.  case $OPTS in  
  58.    f)  
  59.         FULLBK   
  60.    ;;  
  61.    d)  
  62.         ZLBK   
  63.    ;;  
  64.    i)      
  65.         CYBK   
  66.    ;;  
  67.     *)  
  68.           echo "nothing"  
  69.   ;;  
  70.   esac  
  71. done  
  72.  
  73. #####################################################################################