Sauvegarde et restauration de bases de données MySQL pour Windows
Environnement de confirmation de l’opération
- MySQL
-
- MySQL 8.0 Édition Communauté
- Windows
-
- Windows 11
Environnement requis
- MySQL
-
- MySQL 8.0
- Windows
-
- Windows 11
- Windows 10
- Serveur Windows
-
- Windows Server 2022
- Windows Server 2019
- Windows Server 2016
- Windows Server 2012 R2
condition préalable
- La base de données MySQL doit être installée
- La base de données à sauvegarder existe déjà
- Configurer les variables d’environnement et vous permettre d’exécuter MySQL à partir de l’invite de commande
À propos des types de sauvegarde
Je n’entrerai pas dans les détails ici, mais MySQL dispose des types de sauvegardes suivants :
Commande de sauvegarde | Type de données | de sauvegarde Remarques |
---|---|---|
mysqldump | Sauvegarde logique | Une ancienne méthode de sauvegarde. L’interface graphique utilise également cette fonction |
mysqlpump | Sauvegarde logique | Version améliorée de mysqldump |
Utilitaire de vidage d’instance MySQL Shell et utilitaire de chargement de vidage | Sauvegarde logique | En tant que sauvegarde logique, c’est le dernier en date pour le moment |
Percona XtraBackup | Sauvegarde physique | Produits tiers qui permettent la sauvegarde physique |
CLONE PLUGIN | Sauvegarde physique | Sauvegarde physique officielle de MySQL. Cependant, des plugins supplémentaires sont nécessaires |
Sauvegarde d’une base de données à l’aide d’une interface graphique (MySQL Workbench)
Si vous souhaitez fonctionner en toute sécurité dans l’interface graphique sans utiliser de commandes, vous pouvez effectuer une sauvegarde dans MySQL Workbench. Le type de sauvegarde effectué dans MySQL Workbench est « mysqldump ».
Lancez MySQL Workbench.
Sélectionnez la connexion avec la base de données que vous souhaitez sauvegarder.
Une fois la base de données à sauvegarder, sélectionnez l’onglet Administration du navigateur sur la gauche, puis sélectionnez Exportation de données.
L’écran Exportation de données s’ouvre. L’écran est assez grand, alors agrandissez la fenêtre jusqu’à ce que vous voyiez le bouton « Démarrer l’exportation » dans le coin inférieur droit.
Tout d’abord, sélectionnez la base de données que vous souhaitez sauvegarder. Vous pouvez également en sélectionner plusieurs.
Dans « Objets à exporter », vous pouvez choisir de sauvegarder les procédures, les déclencheurs, etc. Cet article est facultatif.
Dans « Options d’exportation », vous pouvez choisir parmi les deux options suivantes :
Description des types | |
---|---|
Exporter vers le dossier du projet de vidage | Sortie sous forme de table ou de fichier procédure par procédure dans un dossier donné. |
Exporter vers un fichier autonome | Intégrez tout dans un seul fichier et sortez-le. |
Peu importe celui que vous produisez. Si vous choisissez ci-dessus, c’est facile car vous pouvez facilement le supprimer si vous souhaitez restaurer uniquement une table spécifique. Les sélections suivantes sont générées dans un seul fichier, ce qui facilite le déplacement et la gestion des fichiers en tant qu’unité de base de données. Cette fois, j’ai sélectionné ce qui suit.
Une fois configuré, cliquez sur le bouton Démarrer l’exportation en bas à droite pour commencer l’exportation.
L’exportation commence et se termine.
Si vous générez dans un seul fichier, cela ressemblera à ceci :
Si vous exportez vers un dossier, il ressemblera à ceci :
Restauration d’une base de données à l’aide d’une interface graphique (MySQL Workbench)
Ouvrez MySQL Workbench, sélectionnez vos connexions, sélectionnez l’onglet Administration dans le navigateur sur la gauche, puis sélectionnez Importation/Restauration des données. Comme il est indiqué « Importer/Restaurer », vous pouvez créer une nouvelle base de données à partir du fichier exporté ou écraser la base de données d’origine.
Développez la fenêtre jusqu’à ce que vous voyiez le bouton « Démarrer l’importation » dans le coin inférieur droit.
Veuillez sélectionner « Options d’importation » en fonction du format de fichier exporté. Comme je l’ai exporté en un seul fichier cette fois-ci, j’ai sélectionné « Importer à partir d’un fichier autonome » ci-dessous et spécifié le fichier exporté.
Sélectionnez le schéma (base de données) à restaurer. Vous pouvez la restaurer à partir d’une base de données existante ou la restaurer en tant que nouvelle base de données à partir du bouton « nouveau » à droite.
Après avoir spécifié, cliquez sur le bouton « Démarrer l’importation » dans le coin inférieur droit pour démarrer la récupération.
Assurez-vous que vos données sont de retour une fois la restauration terminée.
Créez un compte pour la sauvegarde de la base de données via la commande
Il n’y a aucun problème si vous souhaitez exécuter une commande pour sauvegarder une seule fois, mais par exemple, si vous préparez une commande sous forme de fichier à l’avance et que vous l’exécutez, vous devez écrire le mot de passe en texte brut, il est donc plus sûr de créer un compte distinct pour exécuter la sauvegarde.
Les autorisations requises pour la sauvegarde sont les suivantes, mais peuvent augmenter ou diminuer en fonction des informations requises.
- ÉVÉNEMENT
- TABLES DE SERRURE
- CHOISIR
- AFFICHER LA VUE
Si vous le créez à l’aide d’une commande, il ressemblera à ceci : Exécutez-le avec l’outil de ligne de commande MySQL.
create user '<ユーザー名>'@'<ホスト名>' identified by '<パスワード>';
GRANT EVENT, LOCK TABLES, SELECT, SHOW VIEW ON <データベース名>.* TO '<ユーザー名>'@'<ホスト名>';
flush privileges;
exemple
create user 'backup_user'@'localhost' identified by 'password';
GRANT EVENT, LOCK TABLES, SELECT, SHOW VIEW ON test_database.* TO 'backup_user'@'localhost';
flush privileges;
Autorisations de dossier pour la destination de sauvegarde
Les autorisations du dossier dans lequel le fichier de sauvegarde est stocké doivent être définies sur la même autorisation que l’autorisation d’exécuter la commande. Si vous souhaitez exécuter des commandes avec l’autorisation Administrateurs, vous n’avez pas besoin de définir d’autorisations supplémentaires pour le dossier.
Sauvegarde d’une base de données à l’aide de la commande (mysqldump)
Il y a plusieurs sauvegardes de commandes, mais cette fois-ci, je vais sauvegarder avec l’ancien et stable « mysqldump ».
Faites un clic droit sur le menu Démarrer et lancez Terminal (invite de commande). Veuillez noter qu’il ne s’agit pas d’un « client en ligne de commande MySQL 8.0 ».
Vous pouvez le sauvegarder avec la commande suivante :
mysqldump -u <ユーザー名> -p<パスワード> --no-tablespaces --single-transaction --triggers --routines --events --default-character-set=utf8 <データベース名> > "<バックアップファイルパス>"
exemple
mysqldump -u backup_user -ppassword --no-tablespaces --single-transaction --triggers --routines --events --default-character-set=utf8 test_database > "C:\Temporary\Backup.sql"
--default-character-set=utf8
aura le même code de caractère que lors de la sauvegarde dans l’interface graphique. Cela vous permet également de les importer dans l’interface graphique.- Ne mettez pas d’espace entre le champ
-p
du mot de passe et le mot de passe.- Si vous souhaitez également afficher des informations
--no-tablespaces
sur l’espace table, décochez la case . Dans ce cas, les autorisations de l’utilisateur d’exécutionPROCESS
sont requises.
Un fichier de sauvegarde sera créé à l’emplacement spécifié.
Restauration d’une base de données à l’aide de la commande (mysqldump)
Les fichiers sauvegardés avec mysqldump sont dans un format qui peut être exécuté en SQL, vous n’avez donc qu’à exécuter le SQL cible. Je pense que la restauration est souvent effectuée manuellement, il n’y a donc pas de problème à l’exécuter sur le compte root.
Si vous souhaitez l’exécuter à partir d’une commande, exécutez-la à l’invite de commande au lieu de PowerShell. <
En effet, PowerShell n’autorise pas les symboles.
Exécutez la commande suivante :
mysql -u root -p<root のパスワード> <データベース名> < <バックアップした SQL のファイルパス>
exemple
mysql -u root -ppassword test_database < C:\Temporary\Backup.sql
Sauvegarde automatique de la base de données
Pour Windows, il est courant d’utiliser un planificateur de tâches. Commencez par créer un fichier batch. Créez un fichier chauve-souris, entrez le contenu tel qu’il a été sauvegardé avec des commandes et enregistrez-le. Enregistrez les codes de caractère avec Shift-JIS. L’emplacement et le nom du fichier de lot peuvent être arbitraires.
Inscrivez-vous auprès du planificateur de tâches. Faites un clic droit sur le menu Démarrer et sélectionnez « Gérer l’ordinateur ».
Dans le menu de gauche, sélectionnez Gestion de l’ordinateur > Outils système > Planificateur de tâches > Bibliothèque de planificateur de tâches. Sélectionnez Créer une tâche dans le menu de droite.
Définissez l’onglet Général. Le « nom » sera affiché dans la liste des tâches, alors mettez un nom facile à comprendre. Dans les options de sécurité, cochez « Exécuter que l’utilisateur soit connecté ou non ».
L’onglet Déclencheurs définit le moment où la sauvegarde doit être effectuée. Ce paramètre doit être défini en fonction de votre fonctionnement.
Dans l’onglet Opérations, configurez le fichier de commandes que vous venez de créer pour qu’il soit lancé.
Une fois que vous avez défini chacun d’entre eux, confirmez-les avec le bouton OK.
Entrez votre mot de passe pour vous inscrire et courir sur le compte spécifié.
Vérifiez maintenant si la sauvegarde s’exécutera à l’heure spécifiée.