Voici une méthode de backup Mysql pour Debian/Ubuntu conforme iso1664 issue de La-rache.

Voici une méthode de pour transférer des bases MySql sur une autre machine quand vos backups (parce que vous avez des backups) ou votre méthode de restauration sont foirés.

Machine source

Sur cette machine il y a les bases que vous voulez transférer. Première chose, connectez vous à la base et identifiez les bases que vous souhaitez sauver avec la commande:

 SHOW DATABASES;

Une fois la liste des bases à sauvegarder connue, en root :

for DB_NAME in DB1 DB2 DB3; do 
echo "Traitement de $DB_NAME"; 
mysqldump --defaults-file=/etc/mysql/debian.cnf --quick $DB_NAME | gzip > $DB_NAME.gz;
done

Machine cible

Une fois les fichiers transférés dans un répertoire sur la machine cible

for file in *; do 
f=$(basename $file .gz); 
mysqladmin --defaults-file=/etc/mysql/debian.cnf create $f; 
gunzip <$file | mysql --defaults-file=/etc/mysql/debian.cnf $f;
done

Et voila vos bases avec les données sur la nouvelle machine. Il ne vous reste plus qu’à créer les utilisateurs qui vont bien.

 

Si votre infrastructure réseau le permet vous pouvez également transférer les données en utilisant les outils MySql avec quelque chose du genre:


mysqladmin -h 'other_hostname' create db_name
mysqldump db_name | mysql -h 'other_hostname' db_name