IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 MySQL Discussion :

[Aide pour un novice complet] Je n'arrive pas à importer une base de donnée dans MySQL..


Sujet :

MySQL

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut [Aide pour un novice complet] Je n'arrive pas à importer une base de donnée dans MySQL..
    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 !

  2. #2
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    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)

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    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.

  4. #4
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    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)

  5. #5
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 792
    Points : 34 013
    Points
    34 013
    Billets dans le blog
    14
    Par défaut
    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 Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « 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 la suite Linux Mageïa !

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT `comment`
    FROM `phpmyadmin`.`pma_column_info`
    WHERE db_name = '`memoire`'
    AND table_name = ''
    AND column_name = '(db_comment)'
    MySQL a répondu:
    #2006 - MySQL server has gone away
    Voici la structure du fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    /*
    SQLyog Community Edition- MySQL GUI v6.56
    MySQL - 4.0.15 : Database - memoire
    *********************************************************************
    */
    
    
    /*!40101 SET NAMES latin1 */;
    
    /*!40101 SET SQL_MODE=''*/;
    
    /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
    /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
    
    CREATE DATABASE /*!32312 IF NOT EXISTS*/ `memoire`;
    
    USE `memoire`;
    
    /*Table structure for table `collections` */
    
    DROP TABLE IF EXISTS `collections`;
    
    CREATE TABLE `collections` (
      `cote_debut` varchar(6) NOT NULL default '',
      `cote_fin` varchar(6) NOT NULL default '',
      `collection` mediumblob
    ) TYPE=MyISAM;
    
    /*Data for the table `collections` */
    
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    
    /*Table structure for table `interpretes_classiques` */
    
    DROP TABLE IF EXISTS `interpretes_classiques`;
    
    CREATE TABLE `interpretes_classiques` (
      `cote` char(6) NOT NULL default '',
      `interprete_nom` char(40) default NULL,
      `interprete_prenom` char(20) default '',
      KEY `cote` (`cote`)
    ) TYPE=MyISAM;
    
    /*Data for the table `interpretes_classiques` */
    
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    
    /*Table structure for table `releases` */
    
    DROP TABLE IF EXISTS `releases`;
    
    CREATE TABLE `releases` (
      `cote` char(6) NOT NULL default '',
      `pays` char(3) NOT NULL default '',
      `label` char(30) default '',
      `barcode` decimal(13,0) NOT NULL default '0',
      `date_release` date NOT NULL default '0000-00-00',
      KEY `cote` (`cote`)
    ) TYPE=MyISAM;
    
    /*Data for the table `releases` */
    
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    
    /*Table structure for table `titres_classiques` */
    
    DROP TABLE IF EXISTS `titres_classiques`;
    
    CREATE TABLE `titres_classiques` (
      `cote` char(6) NOT NULL default '',
      `compositeur_prenom` char(20) default NULL,
      `compositeur_nom` char(40) default NULL,
      `titre` char(60) NOT NULL default '',
      `annee_production_debut` decimal(4,0) NOT NULL default '0',
      `annee_production_fin` decimal(4,0) NOT NULL default '0',
      `annee_enregistrement_debut` decimal(4,0) NOT NULL default '0',
      `annee_enregistrement_fin` decimal(4,0) NOT NULL default '0',
      UNIQUE KEY `cote` (`cote`)
    ) TYPE=MyISAM;
    
    /*Data for the table `titres_classiques` */
    
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    
    /*Table structure for table `titres_non_classiques` */
    
    DROP TABLE IF EXISTS `titres_non_classiques`;
    
    CREATE TABLE `titres_non_classiques` (
      `cote` char(6) NOT NULL default '',
      `collection_k` char(15) default NULL,
      `intereprete_prenom` char(20) NOT NULL default '',
      `intereprete_nom` char(40) NOT NULL default '',
      `titre` char(60) NOT NULL default '',
      `annee_production` decimal(4,0) NOT NULL default '0',
      `annee_enregistrement_debut` decimal(4,0) NOT NULL default '0',
      `annee_enregistrement_fin` decimal(4,0) NOT NULL default '0',
      KEY `cote` (`cote`)
    ) TYPE=MyISAM;
    
    /*Data for the table `titres_non_classiques` */
    
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    
    /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
    /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    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 :

    Variables (--variable-name=value)
    and boolean options {FALSE|TRUE} Value (after reading options)
    --------------------------------- -----------------------------
    auto-rehash FALSE
    character-sets-dir (No default value)
    column-type-info FALSE
    comments FALSE
    compress FALSE
    debug-check FALSE
    debug-info FALSE
    database (No default value)
    default-character-set utf8
    delimiter ;
    vertical FALSE
    force FALSE
    named-commands FALSE
    ignore-spaces FALSE
    local-infile FALSE
    no-beep FALSE
    host localhost
    html FALSE
    xml FALSE
    line-numbers TRUE
    unbuffered FALSE
    column-names TRUE
    sigint-ignore FALSE
    port 3306
    prompt mysql>
    quick FALSE
    raw FALSE
    reconnect FALSE
    shared-memory-base-name (No default value)
    socket /tmp/mysql.sock
    ssl FALSE
    ssl-ca (No default value)
    ssl-capath (No default value)
    ssl-cert (No default value)
    ssl-cipher (No default value)
    ssl-key (No default value)
    ssl-verify-server-cert FALSE
    table FALSE
    user (No default value)
    safe-updates FALSE
    i-am-a-dummy FALSE
    connect_timeout 0
    max_allowed_packet 16777216
    net_buffer_length 16384
    select_limit 1000
    max_join_size 1000000
    secure-auth FALSE
    show-warnings FALSE

  8. #8
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    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)

  9. #9
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Bon, ça s'améliore.
    J'ai fait ça avec l'invite de commande de Windows :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql -uroot -p < dump.sql
    J'ai tout de même eu une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ERROR 2006 (HY000) at line 139: MySQL server has gone away
    Les données importées ont été plus importantes que d'habitude, là il a importé 55Mo au lieu de 29Mo, mais à mon avis l'import n'a pas été complet. Dans notepad++, le dump SQL comporte 157 lignes. J'imagine que l'import s'est arrêté à la ligne 139 ?

    Qu'est ce que c'est que cette erreur 2006 ?

  10. #10
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    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

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 10/04/2013, 20h16
  2. Je n'arrive plus à extraire ma base de données en mysql console
    Par hamzawhy dans le forum Administration
    Réponses: 3
    Dernier message: 25/08/2012, 10h16
  3. aide pour importer une base de données sous MySQL
    Par karimeri dans le forum Débuter
    Réponses: 4
    Dernier message: 20/01/2010, 19h02
  4. que faut-il pour importer une base de données
    Par cladsam dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 25/09/2007, 15h41
  5. Réponses: 13
    Dernier message: 09/01/2007, 14h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo