Page 1 sur 1

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

Publié : ven. 08 févr. 2013, 14:11
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 ?

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

Publié : ven. 08 févr. 2013, 20:07
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 ?

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

Publié : ven. 08 févr. 2013, 20:21
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 !