Hoe automatisch een back-up te maken van de MySQL-database met behulp van Bash Script

Hoe Automatisch Een Back Up Te Maken Van De Mysql Database Met Behulp Van Bash Script



MySQL is een populair RDBMS dat helpt bij het moeiteloos opslaan en beheren van relationele databases. Het biedt ook een mysqldump-clienthulpprogramma om een ​​logische back-up van MySQL-databases te maken. MySQL ondersteunt meerdere talen en platforms, wat betekent dat u Bash-scripting kunt gebruiken om het hulpprogramma mysqldump te gebruiken voor back-ups in Linux.

Deze gids laat stap voor stap zien hoe u automatisch een back-up van MySQL-databases kunt maken met behulp van het Bash-script.

Hoe automatisch een back-up maken van de MySQL-database met behulp van Bash Script?

Maak een Bash-script voor de back-up van de MySQL-database. Open eerst de terminal, maak een map aan en navigeer naar de map door deze opdrachten te typen:







mkdir mysqlbackup

cd mysqlbackup/

De uitvoer geeft aan dat u met succes naar de directory bent genavigeerd:





Maak een bash-script met de naam ' back-up.sh ” met een willekeurige editor, want deze post-nano-editor wordt gebruikt:





nano-back-up.sh

Het bash-script maakt:



Geef de MySQL-referenties op en de naam van de database waarvan u een back-up wilt maken:

DB_USER='gebruikersnaam'

DB_PASS='wachtwoord'

DB_

Stel de back-upmap in ' BACKUP_DIR ” door de locatie op te geven waar het back-upbestand moet worden opgeslagen:

BACKUP_DIR='/path/to/your/backup/directory'

Stel de datumnotatie in voor de naam van het back-upbestand:

DATUM=$(datum +'%Y-%m-%d_%H-%M-%S')

Gebruik deze mysqldump-opdracht met MySQL-databasereferenties om het SQL-back-upbestand te maken:

mysqldump --user=$DB_USER --password=$DB_PASS $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sql

Gebruik deze opdracht om het SQL-back-upbestand met de gzip-tool te comprimeren:

gzip $BACKUP_DIR/$DB_NAME-$DATE.sql

Om schijfruimte te besparen, verwijdert u de oude back-upbestanden na een bepaalde periode, voor deze periode ' 7 ” dagen oud back-upbestand wordt verwijderd met behulp van deze opdracht:

vind $BACKUP_DIR -type f -naam '*.gz' -mtime +7 -verwijderen

Sla het bestand op en verlaat de nano-editor door op ' CTRL + X ” toetsen:

Wijzig de machtigingen van het bash-script in uitvoerbaar door deze opdracht uit te voeren:

chmod +x back-up.sh

De foutloze uitvoer betekent dat de uitvoering van de opdracht succesvol is:

Voer het script uit met deze bash-opdracht:

sudo bash back-up.sh

Typ het wachtwoord van Ubuntu en gebruik de ' ls ”-opdracht om te controleren of het back-upbestand is gemaakt of niet:

Het back-upbestand is met succes gemaakt met behulp van het bash-script. Nu om het back-upproces te automatiseren met behulp van de ' kroon 'taakplanner hulpprogramma. Gebruik de ' -Het is ” optie met crontab:

crontab -e

Stel de tijd in voor het automatisch uitvoeren van het bash-script. Voor dit bericht, ' 02.00 uur ” is geselecteerd om het script automatisch uit te voeren:

0 2 * * * /path/to/backup_mysql.sh

Sla het bestand op en sluit het af:

Laten we een andere opdracht bekijken als u een back-up van uw database wilt maken na elke ' 5 minuten Typ dit en sla het bestand op:

*/5 * * * * /path/to/backup_mysql.sh

De crontab heeft enige tijd nodig om de taak met succes te maken:

Controleer de map op back-upbestanden die automatisch worden gemaakt na ' 02.00 uur ', de ... gebruiken ' ls ” commando:

De back-upbestanden van de MySQL-database worden automatisch gemaakt met behulp van het bash-script en cron-hulpprogramma.

Conclusie

Maak een bash-script door MySQL-referenties en de naam van de database waarvan u een back-up wilt maken en de bestandsnaamindeling op te geven. Gebruik de opdracht mysqldump om het back-up-SQL-bestand te maken, gzip om het te comprimeren en voer het script uit. Gebruik de crontab om het back-upproces automatisch te maken. In dit bericht werd besproken hoe u automatisch een back-up van een MySQL-database kunt maken met behulp van het Bash-script.