Situatie
Este necesarea efectuarea de backup pentru baza de date MySQL, la un interval regulat (ex. zilnic, saptamanal), si optimizarea spatiului ocupat pe mediul de stocare prin arhivarea fisierului de backup generat.
Solutie
Pasi de urmat
Aplicatii necesare
Mysqldump.exe (https://dev.mysql.com/downloads/mysql/)
Program de arhivare WinRAR (https://www.rarlab.com/download.htm) sau 7-Zip (https://www.7-zip.org/download.html)
Se creeaza un director de lucru C:Backup, in care se creeaza un fisierul backup.cmd (fisier text cu extensia .bat sau .cmd)
Se copiaza in fisierul backup.cmd urmatorul script si se configureaza.
@echo off
cd /d C:Backup
set mysqldump_dir=
set winrar_dir=
rem set 7zip_dir=set host=
set user=
set password=
set dbName=for /f “skip=1 usebackq delims=” %%D (`wmic os localdatetime ^| findstr /r /v “^$”`) do (
set today=%%D
)“%mysqldump_dir%mysqldump.exe” –user =%user% –password=%password% –host=%host% %dbName%> backup.sql
“%winrar_dir%winRar.exe” a –afzip backup-%today%.zip backup.sql
rem %7zip_dir%7zG.exe a backup-%today%.7z backup.sqldel /f /q backup.sql
Se testeaza functionarea corecta a scriptului.
Se creeaza un nou task in Task Scheduler (taskschd.msc)
La General se selecteaza Run whether user is logged on or not si Run with highest privileges
La Triggers se specifica cat de des sa ruleze scriptul de backup (ex. Zilnic la ora 00:00)
La Actions , programul care dorim sa ruleze este sciptul creat C:Backupbackup.cmd
Leave A Comment?