|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 6 ![]() |
Salut à tous !
Alors, voici mon problème. Je suis étudiant en sociologie et je dois pour mon mémoire de fin d'étude travailler sur la base de donnée de La Mediathèque. Les administrateurs de La Médiathèque m'ont fait un dump SQL de cette BDD, et il faut que je l'ouvre dans SPSS, qui est un logiciel de statistique. Normalement, pour le faire, la procédure est celle-ci : je dois importer le fichier SQL dans MySQL, puis grâce à une driver ODBC, connecter SPSS à MySQL. Le soucis est que je n'arrive tout simplement pas à importer la base de donnée dans MySQL. Bon, désolé si le vocabulaire que j'utilise est pas le bon mais je découvre le MySQL uniquement pour importer cette base de donnée, j'y connais donc vraiment rien. J'ai installé easyPHP, je gère donc MySQL à partir de phpMyAdmin. Quand j'ai importé pour la première fois le fichier SQL, il m'a dit que le fichier était trop gros. J'ai donc été dans PHP.ini et j'ai mis upload_max_filesize à 512M et post_max_size et memory_limit à 2000M. Bon, j'ai mis des valeurs énormes pour être sur que ça passe mais c'est peut-être n'importe quoi ? Le fichier que je dois importer comporte 5 tables et fait au total 48,3Mo. J'ai réessayé et ça a pas marché non plus. En décochant "Permettre l'interruption de l'importation si la limite de temps est sur le point d'être atteinte." il y a une fatal error : timeout. Et si je coche l'option, il y a une erreur : il me demande de rechoisir le ficher SQL pour dépasser la limite de temps puis il me fait Error: 1046 Je n'y connait absolument RIEN en MySQL et je sais pas quoi faire. Est ce que vous auriez une idée de ce que je dois faire ? Merci beaucoup ! |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() ![]() Avcxjo MoKoRetraité Inscription : novembre 2005 Messages : 2 528 ![]() |
Saluton,
Parmi les choses dont il faut t'assurer, figure la compatibilité de la version MySQL d'EasyPHP avec celle dont est issu le dump MySQL. Tu peux aussi scinder le dump en plusieurs fichiers. L'un qui créerait les tables et leurs éventuelles contraintes (s'il y a des FOREIGN KEYS créer les tables mères avant les filles). Puis un fichier pour les requêtes d'INSERT de chacune des tables (avec la même contrainte de priorité s'il y a des FOREIGN KEYS). Cela devrait passer avec PHPMyAdmin. Sinon il te reste la possibilité de passer en mode console pour exécuter le fichier.
__________________
Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof articles : Comment émuler un tableau croisé [quasi] dynamique et : Une énigme mathématique résolue avec MySQL recommande l'utilisation de PDO (PHP5 Data Objects) |
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 6 ![]() |
Mmmh, le soucis est que je ne sais absolument pas comment faire tout ça : couper le fichier, je ne sais pas ce que c'est des FOREIGNKEYS ou des requêtes d'INSERT.
J'ai collé le contenu du fichier dans l'onglet SQL de phpMyAdmin et j'ai mis exécuter, mais ça n'a pas marché non plus. Ptet je devrais demander physiquement à qqun qui s'y connait, parce que je crois pas que je vais m'en sortir. |
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() ![]() Avcxjo MoKoRetraité Inscription : novembre 2005 Messages : 2 528 ![]() |
As-tu seulement essayé d'ouvrir le fichier dump avec le bloc-notes windows, par exemple ?
La curiosité est une qualité, c'est l'indiscrétion qui constitue un défaut.
__________________
Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof articles : Comment émuler un tableau croisé [quasi] dynamique et : Une énigme mathématique résolue avec MySQL recommande l'utilisation de PDO (PHP5 Data Objects) |
|
00
|
|
|
#5 |
![]() ![]() |
Si le fichier est compatible, le plus simple est quand même de l'injecter par la ligne de commande. Voir cette discussion.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#6 | |||||
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 6 ![]() |
Oui, j'ai ouvert le fichier avec Notepad++, mais vu mon manque de connaissance, je sais pas trop s'il y a truc qui cloche. En bas j'ai collé la structure du fichier. J'ai enlevé les tables, donc je sais pas si c'est très utile. J'ai essayé de n'importer que la dernière table, juste pour voir. Pour ce faire j'ai juste supprimé les autres tables, et ré enregistré le fichier. Mais ça n'a pas marché, j'ai eu cette erreur :
Erreur requête SQL: Code :
Citation:
Code :
|
|||||
|
|
00
|
|
|
#7 | |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 6 ![]() |
J'ai essayé de d'injecter le ficher par la ligne de commande, j'imagine que c'est par l'invite de commande MS DOS de Windows ??
Voilà la réponse : Citation:
|
|
|
|
00
|
|
|
#8 |
|
Expert Confirmé
![]() ![]() Avcxjo MoKoRetraité Inscription : novembre 2005 Messages : 2 528 ![]() |
D'après le fichier dump il s'agit d'une version MySQL - 4.0.15 et les tables sont des MyISAM, qui ne poseront pas de problème avec les FOREIGN KEYS puisque ce moteur ne les gère pas.
__________________
Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof articles : Comment émuler un tableau croisé [quasi] dynamique et : Une énigme mathématique résolue avec MySQL recommande l'utilisation de PDO (PHP5 Data Objects) |
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 6 ![]() |
Bon, ça s'améliore.
J'ai fait ça avec l'invite de commande de Windows : J'ai tout de même eu une erreur : Code :
ERROR 2006 (HY000) at line 139: MySQL server has gone away Qu'est ce que c'est que cette erreur 2006 ? |
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : novembre 2010 Messages : 6 ![]() |
Bon, j'ai trouvé, je crois que c'est bon.
J'ai trouvé la solution ici : http://dev.mysql.com/doc/refman/5.1/...too-large.html J'ai changé les valeurs des 2 max_allowed_package dans my.ini à 16Mo. Et ça marche, y'a pas eu d'erreur et j'ai maintenant un import de 87Mo. Voilà voilà. Il me reste plus qu'à la lire dans SPSS avec le connecteur ODBC, en espérant que j'ai pas de pb |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com