Sauvegarde MySQL
Ce guide vous aidera à effectuer une sauvegarde complète de votre base de données MySQL sans arrêter votre système. Il a été rédigé et testé par l'équipe devops de Navixy, vous pouvez donc lui faire confiance en tant que solution connue et fonctionnelle.
Ce dont vous avez besoin pour effectuer une sauvegarde complète de votre base de données MySQL sans arrêter le système :
Connecter un volume supplémentaire sur un disque séparé sur lequel la sauvegarde sera effectuée.
Installer un logiciel supplémentaire - https://www.percona.com/software/mysql-database/percona-xtrabackup
Obtenir les identifiants d'un utilisateur MySQL existant ou créer un utilisateur spécifiquement pour la sauvegarde
Toutes les opérations doivent être effectuées en tant qu'utilisateur disposant de droits root, ou en utilisant sudo.
Ci-dessous, nous examinerons plus en détail les étapes que vous devez suivre.
Création d'un utilisateur
À titre d'exemple, nous créerons l'utilisateur nommé bkpuser avec les droits minimums suffisants pour créer une sauvegarde complète et le mot de passe s3cret.
Tout d'abord, vous devez accéder à la console MySQL avec des droits administratifs, exemple :
mysql -uroot -pEnsuite, dans la console MySQL, saisissez les commandes spécifiques aux différentes versions de MySQL :
MySQL 5.xx
MySQL 8.xx
Volume de sauvegarde
Nous devons maintenant calculer la taille du volume supplémentaire sur lequel la sauvegarde sera effectuée.
Afin de déterminer la taille du volume nécessaire pour la sauvegarde de la base de données, vous devez trouver la taille de votre base de données actuelle et la multiplier par 1,5.
Si votre base de données se trouve à l'emplacement par défaut défini lors de l'installation du serveur MySQL, vous devez exécuter la commande suivante avec les droits root :
Si vous avez un emplacement de base de données personnalisé, vous devez spécifier le chemin de la base de données en argument de la commande du, c.-à-d. :
Exemple de calcul

Dans la capture d'écran, nous pouvons voir que la taille actuelle de la base de données MySQL est de 181 Go. Par conséquent, la taille du volume pour sauvegarder cette base de données doit être d'au moins 181 * 1,5 = 271,5 Go, arrondie à 272 Go
Le calcul s'applique à une seule copie de la base de données. Si vous prévoyez de conserver plus d'une copie de sauvegarde de la base de données, pensez à multiplier le résultat par le nombre de sauvegardes stockées.
Logiciel de sauvegarde
Après avoir connecté le nouveau volume et créé un système de fichiers dessus, vous devez installer le logiciel requis pour la sauvegarde de la base de données. Ce logiciel s'appelle https://www.percona.com/doc/percona-xtrabackup/LATEST/index.html. Envisagez de l'installer en utilisant les paquets d'installation prêts disponibles depuis les dépôts Percona XtraBackup.
L'installation se fait via le paquet contenant l'outil de configuration percona-release .
Tout d'abord, téléchargez ce paquet depuis les dépôts Percona XtraBackup avec la commande suivante :
L'étape suivante consiste à lancer l'installation du paquet téléchargé en utilisant l'utilitaire dpkg. Vous devez être root ou utiliser sudo pour exécuter cette commande :
Maintenant, définissez les dépôts nécessaires à cet effet :
Exception pour Debian 10
Sur Debian 10, l'étape ci-dessus renvoie une erreur :

Pour corriger cette erreur, vous devez éditer le fichier /etc/apt/sources.list
Ouvrez ce fichier dans n'importe quel éditeur de texte, c.-à-d. :
Ajoutez la ligne suivante en haut de la liste :
Le contenu du fichier ressemblera à quelque chose comme ceci :
Enregistrez les modifications du fichier puis exécutez les commandes suivantes :
Vous êtes maintenant prêt à installer l'utilitaire de sauvegarde. Pour ce faire, utilisez la commande suivante en tant que root ou avec sudo :
pour la version MySQL 5.xx :
pour les versions MySQL 8.xx inférieures ou égales à 8.0.29 :
Cela termine la procédure d'installation de l'utilitaire Percona XtraBackup.
Création de la sauvegarde
Vous allez maintenant créer une sauvegarde complète de la base de données en utilisant Percona XtraBackup.
la commande de sauvegarde s'exécute sur le même serveur où la base de données copiée est stockée
dans l'exemple ci-dessous, le volume de sauvegarde supplémentaire monté dans
/mnt/backupsdossierun utilisateur pré-créé
bkpuseravec un mot de passes3cretest utilisé pour se connecter à la base de données
Après avoir terminé la sauvegarde, vous devez préparer la base de données copiée pour qu'elle soit opérationnelle. Sans cette opération, la base de données restera inutilisable.
Vous disposez désormais d'une copie de la base de données à jour au moment de sa création, réalisée sans arrêter le serveur et sans soulager sa charge de travail.
Cette copie de sauvegarde peut être utilisée pour restaurer votre base de données en cas d'urgence.
Mis à jour
Ce contenu vous a-t-il été utile ?