|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 2 ![]() |
Comme ma question précédente posée hier n'a pas eu de succès (zéro réponse), je repose mon problème de façon plus précise :
Je veux transférer mes bases MySQL (version 3.23) depuis mon serveur Linux A vers mon serveur Linux B (sur lequel j'ai MySQL version 4.1). - J'ai listé toutes les bases du serveur A et je les ai crées sur le serveur B. - J'ai fait un mysqldump de chaque base du serveur A : for i in `cat lstbases.txt` do mysqldump -u monuser -pmonmdp $i > /Repertoire/Export-$i.sql done et j'ai transféré tous ces fichiers sur le serveur B - Sur le serveur B, j'ai exécuté tous ces sql : for i in `cat lstbases.txt` do mysql -u monuser -pmonmdp $i < /Repertoire/Export-$i.sql done Dans l'ensemble, tout se passe plutôt bien, sauf quelque bases dont l'import me renvoie des messages d'erreurs de syntaxe SQL, dus généralement à des noms de champs acceptés par MySQL 3.23 et refusés par MySQL 4.1 : par exemple, un champ nommé "table" ou "key" ; en les préfixant par exemple du nom de la table (ex. "log_table") et en relançant la requête, ça passe. Le problème après est que les scripts PHP correspondants ne sont plus en phase, et qu'il faudrait les corriger... Autre exemple, des champs portant comme nom des chiffres ("6", "5", etc...). Indépendamment de ce problème de syntaxe, ma démarche est-elle valable ? Il reste aussi à régler le problème éventuel des charsets. Je crois qu'il y a un bin's où il est question des caractères de code UTF-8, et qu'il y a une moulinette qui permet de traiter ça. Quelqu'un peut-il m'en dire plus ? Encore merci. R. |
|
|
00
|
|
|
#2 |
![]() Inscription : juillet 2002 Messages : 537 ![]() |
Il n'était pas nécessaire de faire un shellscript pour dumper toutes les bases. L'option -A (ou --all-databases) de mysqldump aurait fait le travail
Pour éviter les problèmes avec les noms de colonnes, tu peux tenter l'option --quote-names (-Q). Ca devrait t'éviter de modifier les noms et donc tes scripts. Concernant l'UTF8, aucune idée ! |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 2 ![]() |
Merci, Biglo, pour cette réponse rapide.
C'est là qu'on voit que l'autoformation ne donne pas toujours la connaissance en profondeur ... Le dump avec les options -A -Q a été très efficace en effet, sauf que j'avais quelques bases dont le nom comportait un tiret (créées sans doute sous phpMyAdmin), et l'import m'a donné une erreur au moment de les créer car, contrairement au nom des tables et des champs, le dump n'a pas entouré le nom des bases par des quotes inversées. Je l'ai donc corrigé manuellement dans le SQL, et c'est reparti. Encore merci. R. |
|
|
00
|
|
|
#4 |
|
Membre à l'essai
![]() Inscription : août 2006 Messages : 59 ![]() |
Bonjour,
sous phpMyadmin des sites free.fr j'ai rencontré des probleme avec les caracteres spéciaux en exportant en UFT8... j'ai de souvenir exporter en en binaire... ou en fr_latin.. peut etre est-ce le meme probleme.. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com