@echo off
::variables
set Mysql_home=E:\mysql-xxxx-winx64
set DBDIR=D:\Mysql_bak
set PATH=%PATH%;C:\Program Files\7-Zip
set day=%date:~6,4%-%date:~0,2%-%date:~3,2%
set DB=TestDB
:lab_tle_loop
  if exist %Mysql_home% (
      cd /d %Mysql_home%\bin
      goto lab_loob_list
    ) else (
      echo %Mysql_home% Does not exist.
      goto stop
  )
  :lab_loob_list
   if exist %DBDIR% (
      goto lab_list
    ) else (
      md %DBDIR%
      goto lab_list
  )
  :lab_list
     @echo ---------------------------------------------------
     @echo   Start Mysql Backup
     @echo ---------------------------------------------------
   mysqldump -uuser -pxxx -hip --opt --single-transaction -C --routines --events --flush-logs "%DB%" >"%DBDIR%\%DB%".sql
    set days=60
    cd /d "%DBDIR%"
      7z a -t7z "%DB%-%day%".7z "*.sql"
      @echo ------------------------------
      @echo  7z Compression Good
      @echo ------------------------------ 
      DEL "*.sql" goto lab_loop_files
  :lab_loop_files
    FORFILES /p "%DBDIR%" /S /M "%DB%-*.7z" /D -%days% /C "CMD /C DEL @PATH"
:lab_tle_loop_exit
@ECHO ON
pause