Recherche de site Web

Comment sauvegarder et restaurer des bases de données MySQL/MariaDB sous Linux


Cet article vous montre plusieurs exemples pratiques sur la façon d'effectuer diverses opérations de sauvegarde des bases de données MySQL/MariaDB à l'aide de la commande mysqldump et nous verrons également comment les restaurer à l'aide de Commandes mysql et mysqlimport sous Linux.

mysqldump est un programme client en ligne de commande, il est utilisé pour vider des bases de données MySQL locales ou distantes ou des collections de bases de données pour les sauvegarder dans un seul fichier plat.

Nous supposons que MySQL est déjà installé sur le système Linux avec des privilèges administratifs et nous pensons que vous possédez déjà un peu de connaissances sur MySQL. .

Si MySQL n'est pas installé ou si vous n'êtes pas exposé à MySQL, lisez nos articles ci-dessous.

  • Comment installer MySQL sur des distributions basées sur RHEL
  • Comment installer MySQL sur Rocky Linux et AlmaLinux
  • Comment installer MySQL dans Ubuntu Linux
  • Comment installer MySQL sur Debian
  • 20 commandes MySQL (Mysqladmin) pour l'administration de bases de données sous Linux
  • 12 meilleures pratiques de sécurité MySQL/MariaDB pour Linux

Comment sauvegarder la base de données MySQL sous Linux ?

Pour effectuer une sauvegarde de bases de données ou de bases de données MySQL, la base de données doit exister sur le serveur de base de données et vous devez y avoir accès. Le format de la commande serait.

mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]

Les paramètres de ladite commande sont les suivants.

  • [username] : Un nom d'utilisateur MySQL valide.
  • [password] : Un mot de passe MySQL valide pour l'utilisateur.
  • [database_name] : un nom de base de données valide que vous souhaitez sauvegarder.
  • [dump_file.sql] : Le nom du fichier de vidage de sauvegarde que vous souhaitez générer.

Comment sauvegarder une seule base de données MySQL ?

Pour effectuer une sauvegarde d'une seule base de données, utilisez la commande comme suit. La commande va vider la structure de la base de données [rsyslog] avec les données sur un seul fichier de dump appelé rsyslog.sql.

mysqldump -u root -ptecmint rsyslog > rsyslog.sql

Comment sauvegarder plusieurs bases de données MySQL ?

Si vous souhaitez effectuer une sauvegarde de plusieurs bases de données, exécutez la commande suivante. L'exemple de commande suivant effectue une sauvegarde de la structure et des données des bases de données [rsyslog, syslog] dans un seul fichier appelé rsyslog_syslog.sql.

mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql

Comment sauvegarder toutes les bases de données MySQL ?

Si vous souhaitez effectuer une sauvegarde de toutes les bases de données, utilisez la commande suivante avec l'option –all-database. La commande suivante effectue la sauvegarde de toutes les bases de données avec leur structure et leurs données dans un fichier appelé all-databases.sql.

mysqldump -u root -ptecmint --all-databases > all-databases.sql

Comment sauvegarder uniquement la structure de la base de données MySQL ?

Si vous souhaitez uniquement la sauvegarde de la structure de la base de données sans données, utilisez l'option –no-data dans la commande. La commande ci-dessous exporte la base de données [rsyslog] Structure dans un fichier rsyslog_structure.sql.

mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql

Comment sauvegarder uniquement les données de la base de données MySQL ?

Pour sauvegarder les données de base de données sans structure utilisez l'option –no-create-info avec la commande. Cette commande place la base de données [rsyslog] Data dans un fichier rsyslog_data.sql.

mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql

Comment sauvegarder une seule table de base de données ?

Avec la commande ci-dessous, vous pouvez effectuer une sauvegarde d'une seule table ou de tables spécifiques de votre base de données. Par exemple, la commande suivante effectue uniquement une sauvegarde de la table wp_posts à partir de la base de données wordpress.

mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql

Comment sauvegarder plusieurs tables de base de données ?

Si vous souhaitez effectuer une sauvegarde de plusieurs ou de certaines tables de la base de données, séparez chaque table par un espace.

mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql

Comment sauvegarder une base de données MySQL distante

La commande ci-dessous effectue la sauvegarde de la base de données du serveur distant [172.16.25.126] [galerie] sur un serveur local.

mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql

Comment restaurer la base de données MySQL ?

Dans le didacticiel ci-dessus, nous avons vu comment effectuer la sauvegarde des bases de données, des tables, des structures et des données uniquement. Nous allons maintenant voir comment les restaurer en utilisant le format suivant.

# mysql -u [username] –p[password] [database_name] < [dump_file.sql]

Comment restaurer une seule base de données MySQL

Pour restaurer une base de données, vous devez créer une base de données vide sur la machine cible et restaurer la base de données à l'aide de la commande msyql. Par exemple, la commande suivante restaurera le fichier rsyslog.sql dans la base de données rsyslog.

mysql -u root -ptecmint rsyslog < rsyslog.sql

Si vous souhaitez restaurer une base de données qui existe déjà sur la machine ciblée, vous devrez alors utiliser la commande mysqlimport.

mysqlimport -u root -ptecmint rsyslog < rsyslog.sql

De la même manière, vous pouvez également restaurer les tables, les structures et les données de la base de données. Si vous avez aimé cet article, partagez-le avec vos amis.