Précédemment, nous avons créé un fichier batch pour sauvegarder la base de données en un seul clic. Le souci avec ce type de code est qu’on doit enregistrer le nom d’utilisateur et le mot de passe dans le fichier batch, ce que je déconseille vivement. Pour remédier à ce problème, l’utilisateur doit saisir le nom d’utilisateur et le mot de passe à chaque utilisation du script.

Le script batch

Voici un exemple de script batch que vous pouvez utiliser :


echo off
rem credentials to connect to mysql server
set /p mysql_user=Entrez votre nom d'utilisateur MySQL: 
set /p mysql_password=Entrez votre mot de passe MySQL: 
mysqldump --user=%mysql_user% --password=%mysql_password% --all-databases > all-databases-test.sql
pause

Explication du script

  1. echo off : Cette commande désactive l’affichage des commandes dans la console, ce qui rend l’exécution du script plus propre et plus lisible.
  2. rem credentials to connect to mysql server : La commande rem est utilisée pour ajouter des commentaires dans le script. Ici, elle indique que les lignes suivantes définissent les informations d’identification pour se connecter au serveur MySQL.
  3. set /p mysql_user=Entrez votre nom d'utilisateur MySQL: : Cette ligne demande à l’utilisateur de saisir son nom d’utilisateur MySQL, qui sera stocké dans la variable mysql_user.
  4. set /p mysql_password=Entrez votre mot de passe MySQL: : De la même manière, cette ligne demande à l’utilisateur de saisir son mot de passe MySQL, qui sera stocké dans la variable mysql_password.
  5. mysqldump --user=%mysql_user% --password=%mysql_password% --all-databases > all-databases-test.sql : Cette commande lance mysqldump, un outil de ligne de commande utilisé pour créer des sauvegardes de bases de données MySQL. Les options --user et --password utilisent les valeurs saisies par l’utilisateur pour se connecter au serveur MySQL. L’option --all-databases indique que toutes les bases de données doivent être sauvegardées. Le résultat est exporté dans un fichier nommé all-databases-test.sql.
  6. pause : Cette commande arrête l’exécution du script après la sauvegarde, permettant à l’utilisateur de voir le résultat avant de fermer la fenêtre de commande.

Conclusion

Avec ce script simple, vous pouvez automatiser la sauvegarde de vos bases de données MySQL tout en renforçant la sécurité en évitant de stocker les informations d’identification directement dans le fichier batch. Il suffit de copier ce script dans un fichier .bat, de le personnaliser si besoin, et de l’exécuter chaque fois que vous souhaitez créer une sauvegarde.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *