>> ...., а в самой базе отчистить таблицы 
> Это уже третья переменная, про неё Вы в начале не писали. :) 
> Тогда можно ежедневные делать со 2-ого числа 
> 00 4 2-31 * * root mysqldump ....Господа ! Все налабал и протестил Вот такое й скомный результат Может кому и понадобиться 
#Create mysql backup
#!/bin/bash
#function create_file_name build name file with month archive
function create_month_archive(){
   F_D=""
   F_T=""
   FILE_DATE=""
   F_T=$(echo `find /backup/mysql -name 'pet_*' -type f -cmin +1000 -exec ls {} \;`)
   F_D=$(echo `date -r $F_T` | awk '{print substr( $0, 5, 3) substr( $0, 25, 4)}')
   echo $F_D
   FILE_NAME=pet-$F_D.tar.bz2
   /etc/init.d/mysqld stop;
   sleep 30;
   FILE_DATE=$(echo `date +%d-%Y`)
   tar -cjf /backup/mysql/pet_${FILE_DATE}.tar.bz2 /var/lib/mysql/test/*;
   find /backup/mysql -name 'pet_*' -type f -cmin +1000 -exec ls -la {} \;
   echo "DELETE OLD"
   find /backup/mysql -name 'pet_*' -type f -cmin +1000 -exec rm -rf {} \;
   echo "RENAME"
   mv /backup/mysql/pet_${FILE_DATE}.tar.bz2 /backup/mysql/$FILE_NAME;
   /etc/init.d/mysqld start;
   sleep 30;
   mysql test < /usr/local/sbin/mysql_backup.sql;
   echo "Month archive cteate success. Base traffics was refresh!" > /usr/local/sbin/mysql_backup.txt;   
   
}
function create_incremental_archive(){
   /etc/init.d/mysqld stop; 
   sleep 30;
   FILE_DATE=$(echo `date +%d-%Y`)
   tar -cjf /backup/mysql/pet_${FILE_DATE}.tar.bz2 /var/lib/mysql/test/*;
   find /backup/mysql -name 'pet_*' -type f -cmin +1000 -exec ls -la {} \;
   echo "DELETE OLD"
   find /backup/mysql -name 'pet_*' -type f -cmin +1000 -exec rm -rf {} \;
   /etc/init.d/mysqld start; 
   sleep 30;
   echo "Yesterday rchive cteate success." > /usr/local/sbin/mysql_backup.txt;   
   FILE_DATE="";
}
CUR_DAY=$(echo `date +%d`)
if [ $CUR_DAY -eq "01" ]
    then {
                create_month_archive;
             }
         else
                {
                   create_incremental_archive;
                } 
 
fi