Guest User

Untitled

a guest
Jan 24th, 2017
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.04 KB | None | 0 0
  1. @echo off
  2. cls
  3.  
  4. :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  5. :: CONFIGURATION - don't add spaces around equal signs
  6. :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  7.  
  8. set PATH_TO_BACKUP_FOLDER=d:\git\sn-backups
  9. set PATH_TO_MYSQL_BIN=c:\program files\mysql\mysql server 5.7\bin
  10. set MYSQL_DB_NAME=dspdb
  11. set MYSQL_DB_USER=root
  12. set MYSQL_DB_PASS=XXXXXXXX
  13. set USE_EXTENDED_INSERTS=true
  14. set PATH_TO_LIVE_SERVER=d:\live-server
  15.  
  16. :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  17. :: DON'T TOUCH ANYTHING BELOW THIS LINE
  18. :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  19.  
  20. :: ++++++++ MAKE SURE WE HAVE BACKUP FOLDER AND FILES +++++++++
  21. if not exist %PATH_TO_BACKUP_FOLDER% mkdir %PATH_TO_BACKUP_FOLDER%
  22. if not exist %PATH_TO_BACKUP_FOLDER%\log mkdir %PATH_TO_BACKUP_FOLDER%\log
  23. set runlog=%PATH_TO_BACKUP_FOLDER%\log\backup-run.log
  24. set errlog=%PATH_TO_BACKUP_FOLDER%\log\backup-err.log
  25. set lrfile=%PATH_TO_BACKUP_FOLDER%\log\backup-lastrun.txt
  26. if not exist %lrfile% echo 01/01/1970 1>%lrfile%
  27.  
  28. :: ++++++++++++++++++++++ BEGIN LOGGING +++++++++++++++++++++++
  29. echo BACKUP.BAT working ...
  30. call :backup > %runlog% 2>%errlog%
  31. goto :coda
  32.  
  33. :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  34. :: BACKUP SUBROUTINE
  35. :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  36. :backup
  37.  
  38. :: +++++++++++++++++++ GET CURRENT DATETIME +++++++++++++++++++
  39. for /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
  40. for /f "tokens=1-3 delims=/:." %%a in ("%TIME%") do (set mytime=%%a%%b%%c)
  41. set mydatetime=%mydate%_%mytime%
  42. echo %mydatetime%
  43.  
  44. :: ++++++++++++++++ CREATE TEMP BACKUP FOLDER +++++++++++++++++
  45. cd /d %PATH_TO_BACKUP_FOLDER%
  46. mkdir backup-%mydatetime%
  47. cd backup-%mydatetime%
  48. mkdir database
  49. mkdir code
  50.  
  51. :: +++++++++++++++++ DUMP DATABASE TO BACKUP ++++++++++++++++++
  52. echo Backing up database ...
  53. mysqldump --extended-insert=%USE_EXTENDED_INSERTS% -u %MYSQL_DB_USER% -p%MYSQL_DB_PASS% %MYSQL_DB_NAME% > database\DUMP_%mydatetime%.sql
  54.  
  55. :: +++++++++++++++++++ COPY CODE TO BACKUP ++++++++++++++++++++
  56. echo Backing up server code ...
  57. robocopy %PATH_TO_LIVE_SERVER%\conf code\conf /E /NFL /NDL /NJH /NJS /nc /ns /np
  58. robocopy %PATH_TO_LIVE_SERVER%\log code\log /E /NFL /NDL /NJH /NJS /nc /ns /np
  59. robocopy %PATH_TO_LIVE_SERVER%\scripts code\scripts /E /NFL /NDL /NJH /NJS /nc /ns /np
  60. robocopy %PATH_TO_LIVE_SERVER%\sql code\sql /E /NFL /NDL /NJH /NJS /nc /ns /np
  61. robocopy %PATH_TO_LIVE_SERVER%\src code\src /E /NFL /NDL /NJH /NJS /nc /ns /np
  62.  
  63. :: +++++++++++++++++ COMPRESS BACKUP FOLDER +++++++++++++++++++
  64. powershell Compress-Archive .\* ..\backup-%mydatetime%.zip -CompressionLevel Optimal
  65. cd ..
  66. rmdir backup-%mydatetime% /s /q
  67.  
  68. :: +++++++++++++++++++ WRITE RUN DATE FILE ++++++++++++++++++++
  69. echo %date:~4,10% 1>%lrfile%
  70. echo Done!
  71. exit /B
  72.  
  73. :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  74. :: END OF FILE
  75. :: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  76. :coda
  77.  
  78. echo Done!
  79. pause
Add Comment
Please, Sign In to add comment