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

Requêtes MySQL Discussion :

[SQL/BDD] Ajout massif de donnees dans une base mysql


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 1
    Points : 2
    Points
    2
    Par défaut [SQL/BDD] Ajout massif de donnees dans une base mysql
    Bonjour,

    je développe actuellement un systeme pour une bibliotheque en ligne, le systeme s'appuie sur une base MySQL avec une interface web en php qui interroge la base.

    Afin de remplir la base de données avec la liste des ouvrages et des auteurs, j'ai créé un script qui lit tous les enregistrements d'un fichier TXT et qui les insere par une boucle dans la base de donnée.

    Mon problème est que les données sont très nombreuses et que lorsque je lance la page qui contient le script à partir de mon navigateur j'ai le message suivant :

    "La connexion avec le serveur a été réinitialisée pendant le chargement de la page."

    Ce qui signifie a mon avis que l'insertion est trop longue et que du coup le navigateur considere qu'il y a eu un echec.

    Existe - il un moyen d'augmenter le temps d'attente du serveur ou encore de modifier mon script simplement pour réduire le temps d'attente ou bien diviser l'insertion en petites insertions qui prennent peu de temps ( sans forcement créer une vingtaine de pages statiques ...)

    Merci d'avance de votre attention.

  2. #2
    Membre actif
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Points : 269
    Points
    269
    Par défaut
    Il existe des logiciels dédiés à cela. j'en ai utilisé un qui était gratuit l'année dernière pour faire une montée en charge sur une bdd mysql. J'ai oublié son nom, je regarderais si je peux le retrouver. c'est en tout cas plus simple que de faire un script.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Points : 585
    Points
    585
    Par défaut
    Salut,

    dans le php.ini, cherche 'max_execution_time' et tu mets la valeur que tu veux. Sinon, j'avais écrit un script qui formatait chaque ligne du fichier texte en une requête "insert into...;" et il n'y avait pas de problème de timeout (après il suffit d'éxecuter les requêtes dans phpmyadmin).

    Et j'en profite pour dire à Steph82 que je suis très intéressé s'il remet la main sur le logiciel dont il parle.

    a+

  4. #4
    Membre actif
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Points : 269
    Points
    269
    Par défaut
    Ca y'est je l'ai retrouvé, un peu au pif grace a une annonce Adsense. C'est Advance Data Generator, dispo ici: http://www.upscene.com/
    T'as moyen de générer un paquet de données. J'avais utilisé la version trial qui te limitait au nombre de ligne générées par session, mais c'est pas trop gracve. T'as moyen de générer des millions de lignes facilement.

  5. #5
    Membre confirmé Avatar de masu
    Inscrit en
    Février 2004
    Messages
    428
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 428
    Points : 484
    Points
    484
    Par défaut
    peut-etre utiliser la fonction php
    set_time_limit(0);

    j'ai jamais testé mais d'apres la doc ca ressemble a ce que tu veux, non ?
    DON'T PANIC

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Points : 585
    Points
    585
    Par défaut
    Allaiz, merci pour le lien

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 26/02/2007, 01h50
  2. Ajouter des nouvelles données dans une table
    Par Lingo dans le forum Access
    Réponses: 7
    Dernier message: 27/10/2006, 13h58
  3. [MySql] Mise à jour d'une donnée dans une base mysql
    Par Bourak dans le forum Bases de données
    Réponses: 2
    Dernier message: 16/06/2006, 16h46
  4. [MySQL] Ajout d'un record dans une base de donnees
    Par barthelv dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 24/03/2006, 16h03
  5. Réponses: 11
    Dernier message: 01/06/2005, 15h18

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