Accueil » Raspberry » Guides Raspberry pi » Créer un script de sauvegarde pour une base de donnée MySQL sur Raspberry Pi
Guides Raspberry pi

Créer un script de sauvegarde pour une base de donnée MySQL sur Raspberry Pi

guide-raspbian-raspberrypi-backup-mysql-save

Au travers des divers articles et tutos du blog, nous mettons en place plusieurs scripts PHP qui très souvent font référence à une base de données MySQL. Que ce soit sur un Raspberry Pi transformé en serveur web ou sur un NAS Synology, nous multiplions les usages des serveurs web locaux et de leurs bases de données. Aujourd’hui je vais vous expliquer comment créer un petit script bash sur votre Raspberrypi afin de réaliser une sauvegarde automatique de la ou les bases de données qu’il embarque.

Cela pourrait bien vous retirer une belle épine du pied le jour où la base de données viendra à se corrompre ou tomber.

Les prérequis

Pour commencer il faut déjà se connecter en SSH au Raspberry Pi et se placer dans le répertoire ou sera notre script, pour ma part j’ai créé un répertoire “scripts” qui héberge tout mes scripts, mais libre à vous de le nommer comme vous le désirez.

1 Pour rappel pour créer un nouveau répertoire sous Linux, il faut utiliser la commande mkdir :

sudo mkdir scripts

2 A présent, placez-vous ensuite dans ce nouveau répertoire avec la commande cd:

cd scripts

3 Créez et éditez le fichier backup_bdd.sh avec la commande suivante

nano backup_bdd.sh

Maintenant que nous sommes sous l’éditeur nano nous allons pouvoir saisir le code de notre script de sauvegarde

Le script

1 A présent, il faut saisir le script suivant dans l’éditeur nano du Raspberry Pi

#!/bin/bash
#
## on se place dans le répertoire ou l'on veut sauvegarder les bases
#
cd /home/pi/scripts/backups/

# parcours les bases
for i in nom_de_la_bdd; do

## Sauvegarde des bases de données en fichiers .sql
mysqldump -utilisateur -pmot_de_passe $i > ${i}_`date +"%Y-%m-%d"`.sql

## Compression des exports en tar.bz2
tar jcf ${i}_`date +"%Y-%m-%d"`.sql.tar.bz2 ${i}_`date +"%Y-%m-%d"`.sql

## Suppression des exports non-compresses
rm ${i}_`date +"%Y-%m-%d"`.sql

done

2 copier/coller le script ci-dessus en changeant /home/pi/scripts/backups/ par le chemin ou vous voulez réaliser la sauvegarde, nom_de_la_bdd par le nom de la base de donnée à backuper, utilisateur par le nom de l’utilisateur de la BDD (root en général) et mot_de_passe par le mont de passe que vous utilisez pour vous connecter à phpmyadmin.

Conclusion

En conclusion,  vous venez de créer un script de sauvegarde de votre base de données MySQL. Nous verrons dans un prochain article comment nettoyer le répertoire de sauvegarde afin de ne garder que les 5 derniers backups.

Vous pouvez à présent vous reporter à mon article editer la crontab du raspberry pour ajouter ce script à la crontab du rpi afin qu’elle soit complètement automatisée.

Dernière mise à jour du tarif le  2024-12-26 at 20:22

Domo-blog a fait le choix de ne pas polluer votre lecture avec de la publicité. Vous trouverez cependant des liens affiliés vers les produits recommandés dans le contenu. Cela ne perturbe en rien votre experience de lecture et permet de financer le blog.
Vous pouvez également soutenir le blog en m'offrant un café sur Ko-Fi.


discord

Restez connecté aux nouveautés domotiques, inscrivez-vous à notre newsletter

A propos de cet auteur

Aurélien Brunet

Chef de projet informatique, anciennement informaticien spécialisé dans l'IT industrielle, le réseau et les bases de données. Un peu geek à mes heures perdues, je me suis mis à la domotique en 2012 pour sécuriser mon domicile.
Depuis, je teste, j’installe, je code, j’améliore mon installation et surtout, je partage avec vous mon expertise via ce blog et mon podcast Domotique Chronique pour améliorer votre quotidien dans la maison connectée !

Add Comment

Cliquez ici pour poster un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

energie
promos domotique
green
promos domotique

Les prérequis

Pour commencer il faut déjà se connecter en SSH au Raspberry Pi et se placer dans le répertoire ou sera

Le script

1 A présent, il faut saisir le script suivant dans l’éditeur nano du Raspberry Pi

Conclusion

En conclusion,  vous venez de créer un script de sauvegarde de votre base de données MySQL. Nous verrons dans un

  • Les prérequis
  • Le script
  • Conclusion