−Table des matières
Récupérer un base de donnée MySQL
En cas de malheur ! Restaurer une BDD MySQL à partir des fichiers .frm
- Restaurer une BDD MySQL à partir des fichiers .frm :Restaurer une BDD MySQL à partir des fichiers .frm
Pré-requis
- une machine sous debian
- un serveur mysql
- un accès root sur la machine debian
Première étape : sauvegarde du dossier mysql en cours
- Créez le dossier pour la sauvegarde :
pi@framboise:~ $ sudo mkdir -p /srv/data/mysql
- Rendez mysql propriétaire de ce dossier :
pi@framboise:~ $ sudo chown mysql:mysql /srv/data/mysql/
- Pour connaître le dossier mysql en cours, affichez le fichier /etc/mysql/mariadb.conf.d/50-server.cnf et notez la valeur de datadir (par défaut /var/lib/mysql) :
pi@framboise:~ $ cat /etc/mysql/mariadb.conf.d/50-server.cnf (...) datadir = /var/lib/mysql (...)
- Allez dans l'emplacement actuel :
pi@framboise:~ $ cd /var/lib/mysql/
- Arrêtez mysql :
pi@framboise:/var/lib/mysql $ sudo systemctl stop mysqld.service pi@framboise:/var/lib/mysql $ sudo systemctl stop mysql.service
- Copiez les bases dans le dossier de sauvegarde :
pi@framboise:/var/lib/mysql $ sudo cp -r * /srv/data/mysql/
Autres étapes
Supposons que votre ancien emplacement ait été retrouvé en /media/root/var/lib/mysql.
- Videz l'emplacement actuel :
pi@framboise:/var/lib/mysql $ sudo rm -r *
- Positionnez vous dans le datadir à récupérer :
pi@framboise:~ $ cd /media/root/var/lib/mysql pi@framboise:/media/root/var/lib/mysql $
- Copiez les bases dans l'emplacement voulu :
pi@framboise:/media/root/var/lib/mysql $ sudo cp -r * /var/lib/mysql/
- Recopiez