Iedereen weet normaal wel dat het tegenwoordig zeer belangrijk is om backups te nemen. Dit is echter niet zo’n plezant werk en er kruipt vaak veel tijd in. Als je een linux webserver hebt dan kan je deze taak zeer gemakkelijk automatiseren. In deze tutorial laat ik je een klein bash scriptje zien dat je webserver bestanden samen met een backup van je MySQL database in een tar.gz (zoiets als een zip) bestand zet.
Bash backup script
Dit script is niet het beste script dat er bestaat maar het werk en is zeer compact. Je kan het eerder als een voorbeeld zien voor je eigen backup script te gaan bouwen.

Het script zelf ziet er als volgt uit:
0 1 2 3 | #! /bin/bash mysqldump -u [mysql gebruikersnaam] -p[mysql wachtwoord] [databasenaam] > mysql_backup.sql tar -czf `date +%Y%m%d`.tar.gz /var/www/html mysql_backup.sql rm -f mysql_backup.sql |
De eerste lijn zorgt ervoor dat de bash shell gebruikt wordt om het script uit te voeren. De tweede lijn gaat een sql backup maken van de database die je opgeeft. Let erop dat tussen de -p en je wachtwoord geen spatie staat. Daarna wordt er een tar gemaakt van de webserver bestanden en de mysql backup. Deze tar zal als naam de datum van vandaag zal krijgen. De map die staat aangegeven kan je veranderen in de map die jij wil laten backuppen. Als laatste wordt het mysql_backup bestand terug verwijderd.
Zet het script in een bestand met als naam backup.sh. Geef het de juiste rechten met het onderstaande commando.
0 | chmod u+x backup.sh |
Nu kan je het script uitvoeren met:
0 | ./backup.sh |
Het aangemaakte tar bestand kan je dan op een veiligen plaats bewaren zodat je altijd een backup hebt voor als er iets mis moest gaan.