Prérequis

  • Accès SSH à votre serveur
  • MySQL ou MariaDB installé
  • Un utilisateur MySQL avec des privilèges suffisants pour accéder à la base de données

Se connecter au serveur

Ouvrez votre terminal et utilisez SSH pour vous connecter à votre serveur.

Création du script shell

Ouvrez un éditeur de texte et collez le code suivant :

#!/bin/bash

# Remplacez USERNAME, PASSWORD et DB_NAME par vos informations de connexion MySQL
USERNAME="your_username"
PASSWORD="your_password"
DB_NAME="your_db_name"

# Liste toutes les tables de la base de données
TABLES=$(mysql -u $USERNAME -p$PASSWORD $DB_NAME -e 'SHOW TABLES;' | tr -d '| ' | grep -v 'Tables')

# Dump chaque table dans un fichier séparé
for TABLE in $TABLES; do
    mysqldump -u $USERNAME -p$PASSWORD $DB_NAME $TABLE > "$DB_NAME.$TABLE.sql"
done

Exécution du script

Sauvegarde du script

Sauvegardez le fichier avec un nom significatif, comme export_tables.sh.

Rendre le script exécutable

Rendez le script exécutable en utilisant la commande suivante :

chmod +x export_tables.sh

Exécuter le script

Exécutez le script avec la commande suivante :

./export_tables.sh

Résultat

Vous devriez maintenant avoir un fichier SQL distinct pour chaque table de votre base de données, tous créés en une seule exécution du script. Cela peut être particulièrement utile pour de grandes bases de données ou des situations où vous souhaitez manipuler ou sauvegarder des tables individuellement.