Restaurer une BDD MySQL à partir des fichiers .frm

Le problème à résoudre :Vous aviez une base de données MySQL dont les fichiers étaient sur ​​un serveur localvous n’avez pas fait de sauvegarde du fichier SQLet vous avez subi une catastrophe (crash de disque dur...)Vous disposez cependant des fichiers mais une partie est corrompue : PHPmyAdmin ne peut plus extraire la base SQL de votre.

Pré-requis

Sauvegardez tout le dossier /var/lib/mysql de vos fichiers mysql sur un DD externe ou une clé USB (par exemple media/pi/root/var/lib/mysql) :

pi@framboise:~ $ sudo cp -r /var/lib/mysql/ /media/pi/root/var/lib/

Arrêtez les services de Mysql :

pi@framboise:~ $ sudo systemctl stop mysqld.service

Première étape

Nous allons repartir d’une installation Mysql neuve et propre sur votre ordinateur :Mariadb : une base de données (fork de MySQL)Dans le dossier data de votre ancien serveur (media/pi/root/var/lib/mysql), des dossiers contiennent les bases de données avec des fichiers d'extension .frm dont nous aurons besoin. Vous devriez reconnaître des noms de fichiers ou de base de données qui vous sont familiers.Allez dans le dossier de votre nouveau serveur :

pi@framboise:~ $ cd /var/lib/mysql/
pi@framboise:/var/lib/mysql $

Autres étapes

Copiez le dossier contenant les données de votre ancien serveur et tout son contenu dans le dossier data de votre nouvelle installation de Mysql :

pi@framboise:/var/lib/mysql $ sudo cp -r /media/pi/root/var/lib/mysql/<votre_base> .

Renommez le fichier ibdata1 en ibdata1.bak :

pi@framboise:/var/lib/mysql $ sudo mv ibdata1 ibdata1.bak

copiez le fichier ibdata1 de votre ancien serveur vers le nouveau :

pi@framboise:/var/lib/mysql $ sudo cp /media/pi/root/var/lib/mysql/ibdata1 .

Changez le propriétaire des fichiers :

pi@framboise:/var/lib/mysql $ sudo chown -R mysql:mysql /var/lib/mysql/

Redémarrez le serveur Mysql :

pi@framboise:~ $ sudo systemctl restart mysqld

Allez dans votre gestionnaire adminer : vos bases ont été restaurées avec succès !

Conclusion

Problèmes connus

Voir aussi

(fr) http://Article

Basé sur << Restaurer une BDD MySQL à partir des fichiers .frm >> par Tibow Webdesign.