Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Déplacer une base MySQL

10 réponses
Avatar
Alex
Bonjour à tous.

J'ai un petit serveur Linux à la maison qui me fait entre autres serveur web
classique apache/php/mysql.

Suite à un orage, le disque a crashé. Je peux lire les données dessus, mais
le système ne boote pas, donc j'en profite pour refaire une install propre,
avec les dernières versions de l'OS et des softs. Mon install précédente
datant de 96 avec quelques upgrades pour pas trop être largué, on va dire
que c'est justifié.

Donc j'ai maintenant un "nouveau" disque dur et tout dessus. Tout, sauf les
bases SQL.

L'ancien serveur devait etre sous un MySQL 4.0.x. Le nouveau est sous un
5.0.x.

J'ai copié les fichiers des bases de l'ancien disque sur le nouveau, et bien
sûr mysqld ne veut pas démarrer (il ne me dit pas pourquoi).

Quelle est la solution (simple) ? avec un serveur qui marche, je sais faire
un dump et reinjecter le tout. Avec des fichiers nus sur un disque, je sais
pas ;)

J'ai une sauvegarde séparée des données, mais ça revient au même problème,
la légère obsolescence en plus.

Merci pour vos conseils et avis !
--
Alex
[JDR] Visitez Extremia, un monde gratuit et en francais pour D&D et
autres jeux de role.
www.extremia.org

10 réponses

Avatar
Zouplaz
le 10/05/2007 20:33, Alex nous a dit:

Quelle est la solution (simple) ? avec un serveur qui marche, je sais faire
un dump et reinjecter le tout. Avec des fichiers nus sur un disque, je sais
pas ;)

J'ai une sauvegarde séparée des données, mais ça revient au même problème,
la légère obsolescence en plus.




Peut-être
- désinstaller la version 5 au profit d'une version identique à celle de
ton ancien serveur,
- copier les fichiers données binaires (déjà tenté, ça marche)
- démarrer mysql, faire un dump
- déinstaller la version 4
- installer la version 5
- faire un import
Avatar
Zouplaz
le 11/05/2007 09:04, Zouplaz nous a dit:

- copier les fichiers données binaires (déjà tenté, ça marche)



La manip c'était un truc du genre : créer une base vide avec le même
nom, stopper mysql et copier les fichiers binaires dans
/var/lib/mysql/mabasededonnees
Avatar
Alex
"Zouplaz" wrote in message
news:4644158b$0$32272$

Peut-être
- désinstaller la version 5 au profit d'une version identique à celle de
ton ancien serveur,



En esperant qu'il ne faut pas exactement la meme revision : j'y arriverai
jamais :)

- copier les fichiers données binaires (déjà tenté, ça marche)



oui, c'est meme mentionne dans la doc de MySQL

- démarrer mysql, faire un dump
- déinstaller la version 4
- installer la version 5
- faire un import



OK, ma reflexion perso en etait arrive au meme point. J'espere que les
packages Debian sont bien faits et que ca va pas exploser a la
reinstallation de l'un ou l'autre.

Merci,
--
Alex
[JDR] Visitez Extremia, un monde gratuit et en francais pour D&D et
autres jeux de role.
www.extremia.org
Avatar
Pascal PONCET
Alex a écrit :
J'ai copié les fichiers des bases de l'ancien disque sur le nouveau, et bien
sûr mysqld ne veut pas démarrer (il ne me dit pas pourquoi).



Salut,

Pour moi, le défaut de démarrage du sgbdr n'a rien à voir avec la
présence ou non de la base !

La procédure normale, c'est :

1. dump intégral (structure + données) de la base sous l'ancienne version.

2. insertion du dump par requête sql dans la nouvelle version
(éventuellement, si le dump de départ ne le prévoyait pas, il faut
d'abord créer la base).
Avatar
Alex
"Pascal PONCET" wrote in message
news:46442baf$0$21143$

Pour moi, le défaut de démarrage du sgbdr n'a rien à voir avec la présence
ou non de la base !



Je pense que si. Il demarrait bien en version 5.0 juste apres l'installation
(j'ai pas cherche loin : j'ai installe les packages de base de Debian). Je
l'ai arrete, j'ai copie mes fichiers de l'ancienne base, ca redemarre pas.

La procédure normale, c'est :

1. dump intégral (structure + données) de la base sous l'ancienne version.

2. insertion du dump par requête sql dans la nouvelle version
(éventuellement, si le dump de départ ne le prévoyait pas, il faut d'abord
créer la base).



Oui, ca je sais faire, j'ai deja fait plusieurs fois, mais l'ancien systeme
est mort. L'OS ne boote meme plus.

--
Alex
[JDR] Visitez Extremia, un monde gratuit et en francais pour D&D et
autres jeux de role.
www.extremia.org
Avatar
Patrick Texier
Le Fri, 11 May 2007 10:47:44 +0200, Alex a écrit :

> La procédure normale, c'est :

> 1. dump intégral (structure + données) de la base sous l'ancienne version.
>
> 2. insertion du dump par requête sql dans la nouvelle version
> (éventuellement, si le dump de départ ne le prévoyait pas, il faut d'abord
> créer la base).



Oui et donc faire des sauvegardes régulières de la base ce qui ne semble
pas avoir été le cas. Avec les moyens actuels (graveurs, clés USB), il
n'y aucune excuse.

Oui, ca je sais faire, j'ai deja fait plusieurs fois, mais l'ancien systeme
est mort. L'OS ne boote meme plus.



Dans ce cas, il faut repartir avec l'ancienne version de MySQL sur le
nouveau serveur pour pouvoir espérer effectuer des copies de fichiers.
Avatar
Alex
"Patrick Texier" wrote in message
news:
Oui et donc faire des sauvegardes régulières de la base ce qui ne semble
pas avoir été le cas. Avec les moyens actuels (graveurs, clés USB), il
n'y aucune excuse.



Comme je l'ai explique dans un post precedent, c'est fait. Mais ca ne
m'avance a rien. J'y ai a peu pres les memes fichiers (vaguement plus vieux,
je ne sauvegarde pas plus d'une fois par jour).

La seule parade en l'occurence, c'aurait ete un RAID, ou une sauvegarde de
l'integralite du disque dur. Mais mon hard ne le permet pas encore.

Dans ce cas, il faut repartir avec l'ancienne version de MySQL sur le
nouveau serveur pour pouvoir espérer effectuer des copies de fichiers.



Oui c'est aussi ce que m'a deja suggere Zouplaz. Ca m'aurait arrange de
pouvoir passer directement a la version 5, mais bon...

Merci.
--
Alex
[JDR] Visitez Extremia, un monde gratuit et en francais pour D&D et
autres jeux de role.
www.extremia.org
Avatar
Patrick Texier
Le Fri, 11 May 2007 14:06:32 +0200, Alex a écrit :

> Oui et donc faire des sauvegardes régulières de la base ce qui ne semble
> pas avoir été le cas. Avec les moyens actuels (graveurs, clés USB), il
> n'y aucune excuse.

Comme je l'ai explique dans un post precedent, c'est fait. Mais ca ne
m'avance a rien. J'y ai a peu pres les memes fichiers (vaguement plus vieux,
je ne sauvegarde pas plus d'une fois par jour).



Oui, mais la sauvegarde ne serait pas binaire (CREATE TABLE, SELECT *
INTO...) vous n'auriez aucune difficulté à redémarrer en changeant de
version
Avatar
paul POULAIN
Je n'ai pas eu de problèmes en mettant à jour mes OS lorsqu'il y avait un
changement de version.
Jamais, et ma plus vieille base doit dater de mySQL 4.0

question : base myISAM j'imagine, pas innoDB ?

suggestion : vérifier les droits dans le répertoire
(/var/mysql /var/lib/mysql, selon la distro)
ce qui m'est déjà arrivé, c'est mysql qui ne boote pas parce que les
répertoires appartiennent à root et pas au user mysql
--
Paul
Avatar
Alex
"paul POULAIN" a écrit dans le message
de news: f2cgci$1pvm$

question : base myISAM j'imagine, pas innoDB ?



oui myisam.

suggestion : vérifier les droits dans le répertoire
(/var/mysql /var/lib/mysql, selon la distro)
ce qui m'est déjà arrivé, c'est mysql qui ne boote pas parce que les
répertoires appartiennent à root et pas au user mysql



Les droits étaient bien à leur place. AMA, c'est un problème de version (
les bases les plus vieilles datent de la 3.23, quelques-unes ont été créées
directement en 4.0).

J'ai réinstallé une vieille version, remis les fichiers, dumpé le tout en
SQL, remis la version 5.0, réinjecté le SQL, et maintenant ça marche.

Voilà.
--
Alex
[JDR] Visitez Extremia, un monde gratuit et en francais pour D&D et
autres jeux de role.
www.extremia.org