Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- cls
- :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- :: CONFIGURATION - don't add spaces around equal signs
- :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- set PATH_TO_BACKUP_FOLDER=d:\git\sn-backups
- set PATH_TO_MYSQL_BIN=c:\program files\mysql\mysql server 5.7\bin
- set MYSQL_DB_NAME=dspdb
- set MYSQL_DB_USER=root
- set MYSQL_DB_PASS=XXXXXXXX
- set USE_EXTENDED_INSERTS=true
- set PATH_TO_LIVE_SERVER=d:\live-server
- :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- :: DON'T TOUCH ANYTHING BELOW THIS LINE
- :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- :: ++++++++ MAKE SURE WE HAVE BACKUP FOLDER AND FILES +++++++++
- if not exist %PATH_TO_BACKUP_FOLDER% mkdir %PATH_TO_BACKUP_FOLDER%
- if not exist %PATH_TO_BACKUP_FOLDER%\log mkdir %PATH_TO_BACKUP_FOLDER%\log
- set runlog=%PATH_TO_BACKUP_FOLDER%\log\backup-run.log
- set errlog=%PATH_TO_BACKUP_FOLDER%\log\backup-err.log
- set lrfile=%PATH_TO_BACKUP_FOLDER%\log\backup-lastrun.txt
- if not exist %lrfile% echo 01/01/1970 1>%lrfile%
- :: ++++++++++++++++++++++ BEGIN LOGGING +++++++++++++++++++++++
- echo BACKUP.BAT working ...
- call :backup > %runlog% 2>%errlog%
- goto :coda
- :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- :: BACKUP SUBROUTINE
- :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- :backup
- :: +++++++++++++++++++ GET CURRENT DATETIME +++++++++++++++++++
- for /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
- for /f "tokens=1-3 delims=/:." %%a in ("%TIME%") do (set mytime=%%a%%b%%c)
- set mydatetime=%mydate%_%mytime%
- echo %mydatetime%
- :: ++++++++++++++++ CREATE TEMP BACKUP FOLDER +++++++++++++++++
- cd /d %PATH_TO_BACKUP_FOLDER%
- mkdir backup-%mydatetime%
- cd backup-%mydatetime%
- mkdir database
- mkdir code
- :: +++++++++++++++++ DUMP DATABASE TO BACKUP ++++++++++++++++++
- echo Backing up database ...
- mysqldump --extended-insert=%USE_EXTENDED_INSERTS% -u %MYSQL_DB_USER% -p%MYSQL_DB_PASS% %MYSQL_DB_NAME% > database\DUMP_%mydatetime%.sql
- :: +++++++++++++++++++ COPY CODE TO BACKUP ++++++++++++++++++++
- echo Backing up server code ...
- robocopy %PATH_TO_LIVE_SERVER%\conf code\conf /E /NFL /NDL /NJH /NJS /nc /ns /np
- robocopy %PATH_TO_LIVE_SERVER%\log code\log /E /NFL /NDL /NJH /NJS /nc /ns /np
- robocopy %PATH_TO_LIVE_SERVER%\scripts code\scripts /E /NFL /NDL /NJH /NJS /nc /ns /np
- robocopy %PATH_TO_LIVE_SERVER%\sql code\sql /E /NFL /NDL /NJH /NJS /nc /ns /np
- robocopy %PATH_TO_LIVE_SERVER%\src code\src /E /NFL /NDL /NJH /NJS /nc /ns /np
- :: +++++++++++++++++ COMPRESS BACKUP FOLDER +++++++++++++++++++
- powershell Compress-Archive .\* ..\backup-%mydatetime%.zip -CompressionLevel Optimal
- cd ..
- rmdir backup-%mydatetime% /s /q
- :: +++++++++++++++++++ WRITE RUN DATE FILE ++++++++++++++++++++
- echo %date:~4,10% 1>%lrfile%
- echo Done!
- exit /B
- :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- :: END OF FILE
- :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- :coda
- echo Done!
- pause
Add Comment
Please, Sign In to add comment