Importer une base MySQL de 15 Mo en local

Nouveau WRInaute
Bonjour toute la communauté,

Premier post, premier problème didonc :mrgreen: Je passe régulièrement ici pour me documenter en cas de problème et je trouve toujours une solution qui me convient dans la masse de post qu'il y a dans le forum. Donc d'une manière générale, merci à tous les participants car on a souvent des réponses très pro', claires et précises :wink:

Tout ceci m'amène à un soucis que j'ai et que je n'ai pas élucidé, même en lisant quelques pages sur le net. Je dois importer une base MySQL sur mon serveur local pour pouvoir bosser sur un site. La base fait 15 Mo donc l'importation limitée à 2 Mo par PhpMyAdmin n'est pas permise. J'ai trouvé la solution en mode console (sous Windows) suivante :

Code:
mysql -u root -p ecrivain < base.sql
Donc user "root", pas de mot de passe, je souhaite mettre "base.sql" dans la BDD "ecrivain". Alors ça mouline quelques instants et puis j'ai ce retour :

Code:
ERROR 2006 <HY000> at line 461: MySQL server has gone away
Je vais voir dans le fichier de quelle ligne il s'agit, et c'est une requête qui a elle seule fait 13 Mo 8O. Elle est de ce type :

Code:
INSERT INTO table (champ1, champ2, champ3) VALUES 
(val1, val2, val3),
(val1, val2, val3),
(val..., val..., val...),
(val6477, val6477, val6477);
Donc c'est une seule requête qui va faire une mega insertion. MySQL se fait la malle lorsqu'il arrive à cette requête et je ne sais pas comment faire pour l'exécuter :cry:

Avez-vous une idée à proposer pour résoudre cette situation ?
 
WRInaute occasionnel
le plus simple: retourne sous php my admin. Tu fais exporter. Tu scinde le texte d'exportation de ta db en 10 et tu fais 10 copier coller (en executant à chaque fois sinon c inutile!)
 
Nouveau WRInaute
Merci pour ta participation theJB.

J'ai cependant procédé autrement. Avec l'éditeur de texte "UltraEdit", j'ai utilisé sa fonction de remplacement pour éditer tout le fichier en modifiant ceci :

Code:
INSERT INTO table (champ1, champ2, champ3) VALUES
(val1, val2, val3),
(val1, val2, val3),
(val..., val..., val...),
(val6477, val6477, val6477);
par son équivalent :

Code:
INSERT INTO table (champ1, champ2, champ3) VALUES (val1, val2, val3);
INSERT INTO table (champ1, champ2, champ3) VALUES (val1, val2, val3);
INSERT INTO table (champ1, champ2, champ3) VALUES (val..., val..., val...);
INSERT INTO table (champ1, champ2, champ3) VALUES (val6477, val6477, val6477);
Ca reste du bricolage mais en attendant d'avoir mieux, cette méthode a fonctionné.
 
Discussions similaires
Haut