Exporter la base de données MySQL à l'aide de MySQLdump
Ce tutoriel vous apprendra comment exporter des bases de données MySQL à l’aide de l’utilitaire mysqldump
.
Nous verrons la syntaxe d’utilisation de mysqldump
, ses paramètres, et les raisons de l’utiliser. Nous allons également pratiquer cet utilitaire en effectuant des sauvegardes avec/sans données et en exportant des tables et des bases de données.
Pour ce guide, nous utilisons MySQL version 8.0.27. Vous pouvez obtenir la dernière version à partir de ici (si disponible).
Exporter/sauvegarder la base de données MySQL à l’aide de mysqldump
À cette époque, les données sont tout. C’est pourquoi les administrateurs de la base de données rendent nos données sûres et disponibles 24h/24 et 7j/7 ; il existe des situations obligatoires et inattendues où ils doivent exporter les données (perte de données ou défaillance de données).
Gardez à l’esprit que les méthodes de sauvegarde varient selon les différentes plates-formes de base de données. Ici, nous allons découvrir mysqldump
, un utilitaire en ligne de commande pour la base de données MySQL.
Raisons d’utiliser l’utilitaire mysqldump
- La principale raison est de sauvegarder la base de données chaque fois que nécessaire.
- Vous pouvez exporter la structure de la base de données (base de données sans données).
- Il vous permet également de sauvegarder une seule/plusieurs/toutes les bases de données en une seule fois.
mysqldump
vous permet également de sauvegarder une table particulière dans une base de données spécifique.- Il est très facile à utiliser pour exporter des bases de données avec/sans données.
- Il a divers paramètres que nous pouvons ajuster en fonction des besoins pour faire le travail.
Paramètres pour utiliser l’utilitaire mysqldump
Nous utiliserons quelques paramètres pour les commandes utilisées dans ce didacticiel. -u [username]
et -p [password]
sont utilisés pour fournir un nom d’utilisateur et un mot de passe pour se connecter à la base de données MySQL. Il est suggéré d’entrer le mot de passe plus tard lorsqu’il vous le demande plutôt que de le donner après -p
(voir les exemples donnés ci-dessous).
Vient ensuite [option]
où vous pouvez spécifier vos besoins. Par exemple, vous voulez une sauvegarde sans données en utilisant l’option --no-data
.
Après cela, [database name]
est requis. Vous pouvez écrire [table name]
après le [database name]
si vous souhaitez exporter une certaine table à partir d’une base de données.
Ensuite, vous pouvez utiliser le signe >
(supérieur à) pour exporter dans un fichier ou le signe <
(inférieur à) pour restaurer si vous le souhaitez. Vous pouvez apprendre de nombreux autres paramètres de mysqldump
ici.
Sauvegarder la structure de la base de données uniquement
Vous pouvez rencontrer certains scénarios dans lesquels vous souhaitez uniquement exporter la structure de la base de données. Ensuite, vous pouvez utiliser la commande mysqldump
avec l’option --no-data
.
La commande suivante exportera la structure de la base de données personne
.
mysqldump -u root -p --no-data person > E:\Backup\person_database_structure.sql
Sauvegarde d’une ou plusieurs tables d’une base de données
Parfois, il est nécessaire d’exporter une table particulière à partir d’une base de données spécifique. Dans ce cas, mysqldump
vous permet de sauvegarder une ou plusieurs tables de cette base de données.
Vous devez écrire le nom de la table après le nom de la base de données pour exporter une seule table. Après le nom de la base de données, vous pouvez écrire plusieurs noms de table pour exporter plusieurs tables.
# export one table named customer from database named person
mysqldump -u root -p person customer > E:\Backup\customer_table_from_person.sql
# export two tables named customer and employee from database named person
mysqldump -u root -p person customer employee > E:\Backup\customer_employee_from_person.sql
Sauvegarder une/plusieurs/toutes les bases de données
Et si vous vous concentriez sur la sauvegarde de toutes les bases de données plutôt que sur une seule ? Vous pouvez utiliser le mysqldump
de la manière suivante avec l’option --all-database
.
mysqldump -u root -p --all-databases > E:\Backup\all_databases_backup.sql
Si vous souhaitez exporter une ou plusieurs bases de données, vous pouvez écrire les noms des bases de données séparés par un espace unique après l’option --databases
de la manière suivante.
mysqldump -u root -p --databases person courses > E:\Backup\person_courses_backup.sql
Utilisez la commande suivante pour exporter une base de données.
mysqldump -u root -p person > E:\Backup\person_backup.sql
Conclusion
Nous avons découvert en détail l’utilitaire de ligne de commande mysqldump
. Nous avons parlé de ses paramètres et des raisons de l’utiliser. Nous avons également appris à exporter une ou plusieurs tables et bases de données avec/sans données en utilisant différents paramètres.