MySQL Backup cu doar o linie în crontab

Am fost pus recent în situaţia în care eram nevoit să fac un backup zilnic la o bază de date a unui client. CPanel oferă posibilitatea de backup, dar nu are ceva automatizat. Singura soluţie a fost folosirea unei linii de comandă în crontab.

Pe scurt, se intră în CPanel la Cron Jobs şi se alege între Standard / Advanced, în funcţie de priceperea fiecăruia. In linia de comandă se foloseşte ceva de genul:

date=`date -I`; mysqldump -u yourusername -pyourpassword --all-databases > /home/LOGIN/bak_$date.sql; gzip /home/LOGIN/bak_$date.sql

Să explic pe scurt ce înseamnă linia de mai sus. /home/LOGIN/bak_$date.sql reprezintă calea unde se doreşte salvarea fişierelor de backup, LOGIN fiind userul de CPanel. La fiecare fişier se adaugă data la care se face backupul şi în plus se comprimă cu gzip.

yourusername şi yourpassword reprezintă parola şi numele de utilizator MySQL cu acces la baza/bazele de date la cea care doriţi să faceţi backup. Mai trebuie doar setată frecvenţa de folosire a liniei de comandă de mai sus şi gata.

Atenţie: nu puneţi fişierele de backup în public_html / www pentru a fi accesate de oricine, sau dacă o faceţi, folosiţi opţiunea de Password protect directories sau creaţi un fişier .htaccess.

Lasă un răspuns