[mysql] recuperer donnees (en cours)

Applications, problèmes de configuration réseau
Répondre
AchilleFraisse
Elfe
Messages : 623
Inscription : dim. 27 avr. 2014, 09:32

[mysql] recuperer donnees (en cours)

Message par AchilleFraisse »

bonjour
mon pc sous archlinux a crash et je n'avais pas tout enregistré.
j'ai reussi a reconnecter le disque dur sous ubuntu et j'ai dans le dossier /var/lib/mysql des fichiers frm et ibd dans des dossiers correspondant aux noms de mes tables mysql.
est-ce qu'il y a moyen de convertir ses fichiers frm et idb en donnees sql pour que je puisse sauvegarder mes tables ? et si oui comment faire ? merci
Avatar de l’utilisateur
papajoke
Elfe
Messages : 784
Inscription : sam. 30 août 2014, 19:54

Re: [mysql] recuperer donnees (en cours)

Message par papajoke »

bonjour
tu a déjà une sauvegarde :wink:
puisque tu as les datas au format natif (maria ou mysql), il te suffit d'installer le même serveur sur ton autre linux et tu pourras alors exploiter les datas comme tu le désires
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
AchilleFraisse
Elfe
Messages : 623
Inscription : dim. 27 avr. 2014, 09:32

Re: [mysql] recuperer donnees (en cours)

Message par AchilleFraisse »

Merci pour ta reponse,
La sauvegarde que j ai ce sont juste des fichiers sql que j ai exporter et reimporter sur une autre bdd sous debian.
Et il y a des tables que je n ai pas sauvegardé.
Avatar de l’utilisateur
papajoke
Elfe
Messages : 784
Inscription : sam. 30 août 2014, 19:54

Re: [mysql] recuperer donnees (en cours)

Message par papajoke »

on ne se comprend pas :lol:
tu as déjà toutes tes bases de données mais seulement elles ne sont pas au format "universel" sql mais mysql
Donc en installant mysql tu vas pouvoir ré-exploiter tes fichiers et éventuellement faire un dump au format sql

Il n'y a donc rien à récupérer (comme le demande ton titre), tu as les données et tu peux les réutiliser
Ta sauvegarde c'est ton répertoire, et pour exploiter des fichiers mysql on installe un serveur mysql
Dernière modification par papajoke le jeu. 30 janv. 2020, 11:44, modifié 1 fois.
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
AchilleFraisse
Elfe
Messages : 623
Inscription : dim. 27 avr. 2014, 09:32

Re: [mysql] recuperer donnees (en cours)

Message par AchilleFraisse »

J ai essayé de copier le repertoire / var/lib/mysql d arch dans celui d ubntu.
J ai chmod 700 et chown mysql:mysql tout les dossiers et fichiers.
Mais quand je me connecte a mysql je ne vois pas les bdd
AchilleFraisse
Elfe
Messages : 623
Inscription : dim. 27 avr. 2014, 09:32

Re: [mysql] recuperer donnees (en cours)

Message par AchilleFraisse »

pas d'avis du coup ?
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10709
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [mysql] recuperer donnees (en cours)

Message par FoolEcho »

Copier le répertoire /var/lib/mysq/ d'un serveur de base de données à l'autre ne suffit pas car en gros les frm contiennent la structure des tables (en binaire) et les ibd les données... mais sans les avoir joué du tout dans la nouvelle base ben... vous voyez le problème. :copain:

Si tu veux faire un dump, mysqldump est là pour ça (néanmoins entre deux distributions il faut potentiellement faire attention à la version des serveurs...)... à condition que la base soit relativement petite:
https://wiki.archlinux.org/index.php/MariaDB#Backup
https://mariadb.com/kb/en/backing-up-an ... databases/ .
Du coup tu peux importer le sql obtenu ailleurs : https://stackoverflow.com/questions/949 ... t-one-time .

Tu peux aussi réutiliser les fichiers frm et ibd existants ( pour charger les frm tu auras besoin de mysqlfrm fourni par mysql-utilities ; quelques infos: https://easyteam.fr/mysql-utilities/) . La procédure indiquée ici m'a l'air complète (pas testé pour mariadb mais il n'y a pas de raison): https://medium.com/@badalnaik/mariadb-m ... a95269fba2 (attention le type travaille sur le même serveur de base de données du coup il fait mumuse avec les tablespaces et noms de base).
«The following statement is not true. The previous statement is true.» :nage:
AchilleFraisse
Elfe
Messages : 623
Inscription : dim. 27 avr. 2014, 09:32

Re: [mysql] recuperer donnees (en cours)

Message par AchilleFraisse »

Merci pour ta reponse.
Mais je ne comprends pas bien.
Moi les seuls donnéed que j ai c est lancien répertoire /var/lib/mysql dans lequel il y a les données que je veux récupérer.
Mais si je fais un mysqldupp je vais le faire sur ka bdd de mon nouveau système et pas sur l ancien répertoire mysql
AchilleFraisse
Elfe
Messages : 623
Inscription : dim. 27 avr. 2014, 09:32

Re: [mysql] recuperer donnees (en cours)

Message par AchilleFraisse »

J ai par exemple un bdd forum et une table users.
J ai déplacer cette bdd dans le /var/lib/mysql de mon nouveau system.
Je me connecte a mysql et je tape :

Code : Tout sélectionner

use forum;show tables;
La je vois ma table users.
Et si je fait un select dessus il me répond :

Code : Tout sélectionner

users doesn't exist in engine
Donc je ne peux pas faire de dump dessus
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10709
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [mysql] recuperer donnees (en cours)

Message par FoolEcho »

AchilleFraisse a écrit : dim. 02 févr. 2020, 18:19 Merci pour ta reponse.
Mais je ne comprends pas bien.
Moi les seuls donnéed que j ai c est lancien répertoire /var/lib/mysql dans lequel il y a les données que je veux récupérer.
Mais si je fais un mysqldupp je vais le faire sur ka bdd de mon nouveau système et pas sur l ancien répertoire mysql
Tu n'as pas été des plus clairs... Pas évident de comprendre que ton serveur de bdd sous Arch ne fonctionnait plus... :|
FoolEcho a écrit : dim. 02 févr. 2020, 10:11 Tu peux aussi réutiliser les fichiers frm et ibd existants ( pour charger les frm tu auras besoin de mysqlfrm fourni par mysql-utilities ; quelques infos: https://easyteam.fr/mysql-utilities/) . La procédure indiquée ici m'a l'air complète (pas testé pour mariadb mais il n'y a pas de raison): https://medium.com/@badalnaik/mariadb-m ... a95269fba2 (attention le type travaille sur le même serveur de base de données du coup il fait mumuse avec les tablespaces et noms de base).
... mais je t'ai indiqué la procédure pour récupérer une base depuis les fichiers .frm et ibd... :|
«The following statement is not true. The previous statement is true.» :nage:
kunsochi
Daikyu
Messages : 71
Inscription : lun. 01 sept. 2014, 21:07

Re: [mysql] recuperer donnees (en cours)

Message par kunsochi »

D accord merci je vais regarder.
Par contte le deuxieme lien ne marche pas
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10709
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [mysql] recuperer donnees (en cours)

Message par FoolEcho »

C'est la citation qui l'a cassée... mais tu pouvais reprendre le message original...
«The following statement is not true. The previous statement is true.» :nage:
laurent85
Elfe
Messages : 960
Inscription : mar. 16 oct. 2018, 21:05

Re: [mysql] recuperer donnees (en cours)

Message par laurent85 »

kunsochi a écrit : dim. 02 févr. 2020, 20:49 D accord merci je vais regarder.
Par contte le deuxieme lien ne marche pas
Bonjour,
AchilleFraisse et kunsochi c'est la même personne ?
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17393
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [mysql] recuperer donnees (en cours)

Message par benjarobin »

Oui, je crois qu'il a plus de 2 comptes ici...
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
AchilleFraisse
Elfe
Messages : 623
Inscription : dim. 27 avr. 2014, 09:32

Re: [mysql] recuperer donnees (en cours)

Message par AchilleFraisse »

Oui j ai deux comptes pour ne pas etre toujours le meme guignole qui pose des questions tout le temps.
Pour en revenir à mysqlfrm, j ai un soucis avec le package mysql-utilities. Lorsque je l installe depuis aur, il me dit qu il ne trouve pas le paquet python2-mysql-connector. Je ne le trouve ni dans aur ni dans les depots.
Par contre dans les depots j ai un python-mysql-connector mais quand je l installe ca ne change rien
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10709
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [mysql] recuperer donnees (en cours)

Message par FoolEcho »

AchilleFraisse a écrit : lun. 03 févr. 2020, 09:40 Pour en revenir à mysqlfrm, j ai un soucis avec le package mysql-utilities. Lorsque je l installe depuis aur, il me dit qu il ne trouve pas le paquet python2-mysql-connector. Je ne le trouve ni dans aur ni dans les depots.
Pas claire ton histoire. Si c'est sur ton Ubuntu que tu veux installer la base, c'est sur et depuis le serveur de bdd Ubuntu qu'il te faut installer et utiliser mysql-utilities... tout en travaillant sur le répertoire d'Arch (ce dernier étant juste monté ou copier sur ton Ubuntu en gros).
«The following statement is not true. The previous statement is true.» :nage:
AchilleFraisse
Elfe
Messages : 623
Inscription : dim. 27 avr. 2014, 09:32

Re: [mysql] recuperer donnees (en cours)

Message par AchilleFraisse »

Oui, j'avais essayé de le faire depuis ma nouvelle instal de arch, mais je n'arrivais pas a installer mysql_utilities.
bref, je le fais maintenant depuis ubuntu. j'ai suivi toute la procedure et il me marque (quand je fais un select sur ma_table) :

Code : Tout sélectionner

Tablespace has been discarded for table ma_table
j'ai essayé de le refaire en enlevant la partie où il genere le fichier discard-ddl.sql, mais quand je fais un select sur ma_table il me dit qu'il n'y a aucune ligne alors que mon fichier ibd contient bien mes donnees
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10709
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [mysql] recuperer donnees (en cours)

Message par FoolEcho »

Je ne sais pas.
Jamais eu à faire ce genre de manips et peut-être tu as eu des erreurs avant... Faudrait voir sans importer les données (sans les copies d'ibd donc) si tu peux déjà requêter ou pas du tout...
Les étapes de discard et d'import sont nécessaires en tous cas au vu du contexte.

Mais à l'aveugle c'est impossible de te guider...
«The following statement is not true. The previous statement is true.» :nage:
Répondre