Skip to content

Instantly share code, notes, and snippets.

@Langmans
Last active January 25, 2016 09:20
Show Gist options
  • Save Langmans/c61db6e09e92579562a6 to your computer and use it in GitHub Desktop.
Save Langmans/c61db6e09e92579562a6 to your computer and use it in GitHub Desktop.
echo off
set dbUser=root
set dbPassword=mysql
set backupDir="C:\Users\Ruben\PhpstormProjects\mysql backup"
:: set mysqldump="C:\Program Files (x86)\Ampps\mysql\bin\mysqldump.exe"
set mysqldump="C:\Users\Ruben\Desktop\UwAmp\bin\database\mysql-5.6.20\bin\mysqldump.exe"
set mysqlDataDir="C:\Users\Ruben\Desktop\UwAmp\bin\database\mysql-5.6.20\data"
set zip="C:\Program Files\7-Zip\7z.exe"
:: get date
for /F "tokens=2-4 delims=/ " %%i in ('date /t') do (
set yy=%%i
set mon=%%j
set dd=%%k
)
:: get time
for /F "tokens=5-8 delims=:. " %%i in ('echo.^| time ^| find "current" ') do (
set hh=%%i
set min=%%j
)
echo filename=%yy%%mon%%dd%_%hh%%min%
set filename=%yy%%mon%%dd%_%hh%%min%
:: switch to the "data" folder
pushd %mysqlDataDir%
:: iterate over the folder structure in the "data" folder to get the databases
for /d %%f in (*) do (
if not exist %backupDir%\%%f (
mkdir %backupDir%\%%f
)
%mysqldump% --host="localhost" --user=%dbUser% --password=%dbPassword% --single-transaction --add-drop-table --databases %%f > %backupDir%\%%f\%filename%.sql
%zip% a -tgzip %backupDir%\%%f\%filename%.sql.gz %backupDir%\%%f\%filename%.sql
del %backupDir%\%%f\%filename%.sql
)
popd
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment