[mysql] Récupérer la BDD depuis un autre disque dur

Applications, problèmes de configuration réseau
Avatar de l’utilisateur
Feng
yeomen
Messages : 273
Inscription : mer. 07 avr. 2010, 20:19

[mysql] Récupérer la BDD depuis un autre disque dur

Message par Feng »

Bonjour,

J'ai avec moi un disque dur qui contient des bases de données de mon destkop. Je suis en déplacement et ai donc mon laptop avec moi. Tous deux sont sous archlinux.
Je souhaite récupérer une BDD qui se trouve sur mon HDD desktop pour y accéder depuis mon laptop.

J'ai changé le data_dir dans /etc/my.cnf mais je reçois le message d'erreur suivant :
[root@firemoon feng]# systemctl status mysqld
mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled)
Active: activating (start-post) (Result: exit-code) since ven. 2013-02-08 14:08:38 CET; 24s ago
Process: 15801 ExecStart=/usr/bin/mysqld --user=mysql (code=exited, status=1/FAILURE)
Control: 15802 (mysqld-post)
CGroup: name=systemd:/system/mysqld.service
└─control
├─15802 /bin/sh /usr/bin/mysqld-post
└─15976 sleep 1

févr. 08 14:08:38 firemoon systemd[1]: Starting MySQL Server...
févr. 08 14:08:38 firemoon systemd[1]: mysqld.service: main process exited, code=exited, status=1/FAILURE
févr. 08 14:08:38 firemoon mysqld[15801]: 130208 14:08:38 [Warning] Can't create test file /run/media/feng/e30d0ccc-d17d-4655-ad55-8f79f1fb4354/var/lib/mysql/firemoon.lower-test
févr. 08 14:08:38 firemoon mysqld[15801]: 130208 14:08:38 [Warning] Can't create test file /run/media/feng/e30d0ccc-d17d-4655-ad55-8f79f1fb4354/var/lib/mysql/firemoon.lower-test
févr. 08 14:08:38 firemoon mysqld[15801]: [121B blob data]
févr. 08 14:08:38 firemoon mysqld[15801]: 130208 14:08:38 [ERROR] Aborting
févr. 08 14:08:38 firemoon mysqld[15801]: 130208 14:08:38 [Note] /usr/bin/mysqld: Shutdown complete
J'ai également essayé avec mysqld_safe :
[root@firemoon feng]# mysqld_safe
130208 14:09:34 mysqld_safe Logging to '/run/media/feng/e30d0ccc-d17d-4655-ad55-8f79f1fb4354/var/lib/mysql/firemoon.err'.
130208 14:09:34 mysqld_safe Starting mysqld daemon with databases from /run/media/feng/e30d0ccc-d17d-4655-ad55-8f79f1fb4354/var/lib/mysql
130208 14:09:38 mysqld_safe mysqld from pid file /run/media/feng/e30d0ccc-d17d-4655-ad55-8f79f1fb4354/var/lib/mysql/firemoon.pid ended

Après quelques recherche j'ai entendu parler de limitation dans la définition de data_dir sur un disque autre que celui du système, mais on parle alors de apparmor, un soft qui ne semble pas installé avec mysql sous Arch puisqu'il est dispo sur AUR. Mais Arch a peut-être prévu un autre dispositif !

Quelqu'un a-t-il une solution ?
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10707
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [mysql] Récupérer la BDD depuis un autre disque dur

Message par FoolEcho »

Salut,

On ne sait pas trop comment tu as procédé... :|
Pourquoi ne pas directement monter le disque dans /var/lib/mysql (à ne pas faire si tu as déjà un serveur et une base de données sur ton laptop) ?
Ou dupliquer la base (via mysqldump) et la réinjecter dans ton laptop ?
«The following statement is not true. The previous statement is true.» :nage:
Avatar de l’utilisateur
Feng
yeomen
Messages : 273
Inscription : mer. 07 avr. 2010, 20:19

Re: [mysql] Récupérer la BDD depuis un autre disque dur

Message par Feng »

Je suis parti de chez moi avec mon HDD sous le bras, c'est comme ça que j'ai procédé :D
Plus sérieusement j'ai changé data_dir dans my.cnf pour qu'il pointe vers /monHDD/var/lib/mysql .

Mon laptop a déjà des BDD, ceci dit je ne vois pas pourquoi ça empêche de monter le HDD dans /var/lib/mysql ! l'idée est bonne !!
Au pire, je peux monter le disque dans un répertoire bidon genre /etc/mysql_trick et définir le data_dir vers ce répertoire, il devrait être accepté non ?

Le problème c'est que mysql ne veut pas démarrer (cf. erreurs premier post), donc je ne peux pas utiliser mysqldump !
Répondre