Version complète: sur le forum Webmaster Hub : Backup MySQL - Restauration des bases de données.
Webmaster Hub > Création et exploitation de Sites Internet > Les fondations d'un site
netux
Bonjour,

J'ai backuper mes données mysql en allant dans le répertoire /home/mysql/xxx/... et en sauvegardant les fichiers .frm .MYD et .MYI
Je voudrais maintenant les restaurées en faisant bêtement copier/coller et le problème suivant se pose:
CODE
Erreur

requête SQL: Modifier

SHOW INDEX FROM `clientele`;

MySQL a répondu:Documentation
#1017 - Can't find file: './netux/clientele.frm' (errno: 13)


Je pense donc que je ne pouvais pas faire de la sorte.
Comment puis je récupérer mes données ?

Y a t'il moyen de générer le script sql ?
Dan
Bonjour,

Le problème en exécutant une simple copie de tes fichiers alors que mysql est actif est que tu sauves la base dans un état "indéterminé"...
Tu risques donc d'avoir des problèmes en remettant ces fichiers en place.

La seule manière efficace et sûre de sauvegarder une base est à l'aide de mysqldump, et avec mysql pour la restaurer en place.

Dan
netux
ok. En plus je pense que le problème peut venir du fait que j'ai changer de version de mysql.

Y a vraiment pas moyen de lire ces fichiers et de récupérer les scripts sql ?

si je réinstalle la version de mysql sur une autre machine, ca pourrait fonctionner ?
Dan
Ca pourrait... mais sans certitude.
Cela dépend de l'activité de mysql au moment de la copie que tu as faite... s'il écrivait dans une table, elle risque d'être corrompue.
spijoel
normalement les fichiers on les copie avec la commande prévue à cette effet:

mysqlhotcopy


sinon d'après l'erreur que tu donnes "Can't find file: './netux/clientele.frm'", tu as bien le meme nom de dossier ?
netux
oui oui c'est bien le même nom de dossier.
Dan
CITATION(spijoel @ samedi 12 août 2006, 11h54) *
normalement les fichiers on les copie avec la commande prévue à cette effet:

mysqlhotcopy

mysqlhotcopy est un script écrit en Perl, contrairement à mysqldump qui est un programme écrit en C.
J'aurais donc tendance à préférer mysqldump (qui est fourni avec mysql, et sera plus rapide...) et qui ne dépend pas de la version Perl installée sur le serveur.

Dan
spijoel
CITATION(Dan @ samedi 12 août 2006, 13h11) *
mysqlhotcopy est un script écrit en Perl, contrairement à mysqldump qui est un programme écrit en C.
J'aurais donc tendance à préférer mysqldump (qui est fourni avec mysql, et sera plus rapide...) et qui ne dépend pas de la version Perl installée sur le serveur.

Dan

ce sont 2 finalités complètement différentes à mon avis.

mais perso je n'utilise aussi que mysqldump.
netux
Salut tout le monde,

Après une semaine de recherche ... J'ai enfin trouver comment relire les bases de données sauvegarder en MYI ET MYD et FRM.

En fait rien de plus simple, sous windows j'ai installé le server web wamp.

Ensuite j'ai copier/coller la base dans le repertoire {wamp}/mysql/nomdusite/

Et ça à fonctionner
Dan
CITATION(netux @ vendredi 18 août 2006, 16h41) *
Et ça à fonctionner

Tu as eu de la chance que mysql n'étant pas en train d'écrire dans tes tables au moment où tu as fait la copie des fichiers.

Mais on peut avoir de la chance un jour et pas le lendemain !
Fais-y attention pour la prochaine sauvegarde et utilise les outils dédiés (mysqlhotcopy ou mysqldump)

Dan
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.