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 :

20 minutes pour un import de 15000 lignes, normal ?


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 68
    Par défaut 20 minutes pour un import de 15000 lignes, normal ?
    Bonjour,

    Un client de la Web Agency où je bosse se sert d'un CSV (en provenance de Sage) pour importer ses produits, leurs caractéristiques ainsi que d'autres informations liées à ceux-ci.

    Bref, plutôt qu'effectuer une requête SQL de type INSERT par produits/caractéristiques, nous avons décidé de créer un fichier .sql contenant toutes les requêtes (1 par ligne) et de l'importer par la suite via un script Shell.

    Ce .sql comporte donc environ 15000 lignes et met actuellement 20 minutes à être importé.

    Ma question est la suivante : est-ce une durée normale ? Si non, comment réduire cette durée, quels paramètres optimiser sur le serveur dédié (http://www.ovh.com/fr/produits/superplan_best_of.xml) ?

    Informations :
    - les tables concernées sont en InnoDB
    - un import local (WAMP) du .sql met environ 1 minute à être effectué (via PHPMyAdmin > Importer)

    Je suis à votre disposition pour toute information qui pourrait vous aider à répondre à ma question.

    Merci par avance.

  2. #2
    Membre expérimenté

    Profil pro
    En reconversion
    Inscrit en
    Novembre 2007
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : En reconversion

    Informations forums :
    Inscription : Novembre 2007
    Messages : 180
    Par défaut test sur le serveur
    Bonjour,
    Avez vous essayé de tester le lancement du script directement en local, c'est à dire après avoir uploadé le fichier (par ftp par exemple) sur le serveur puis via le shell à distance ?
    Cela vous indiquerait déjà d'où vient le problème, la connexion ou bien le serveur ...

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 68
    Par défaut
    Tout d'abord merci pour votre réponse.

    Pour répondre à votre question : Oui, le script Shell télécharge le .sql avant de l'exécuter en local.

  4. #4
    Membre expérimenté

    Profil pro
    En reconversion
    Inscrit en
    Novembre 2007
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : En reconversion

    Informations forums :
    Inscription : Novembre 2007
    Messages : 180
    Par défaut
    On s'est mal compris, pour trouver l'origine du problème, il faudrait tester manuellement, sans utiliser le script automatique déjà fait.
    Vous téléchargez manuellement le fichier .sql sur le serveur puis vous ouvrez un shell à distance, lancez une session mysql et exécutez le script. Si ce dernier point met toujours 20 minutes, vous aurez déjà identifié la source du problème. En gros il faut découper les tâches du script une à une, jusqu'à tomber sur le problème.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 68
    Par défaut
    Le script Shell ne fait qu'un "mysql .......... < data.sql".

    J'ai testé directement la commande dans le Shell avec le même résultat.

    J'espère répondre concrètement à votre question et l'avoir bien comprise.

    Merci encore.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    15000 en 20 minutes, ça fait 12,5 par seconde.
    Suivant le contexte c'est peut-être pas si mal que ça.

    - Combien de lignes contient la table ?
    - Combien de colonnes contient la table ?
    - Combien d'index y a-t-il sur cette table ?
    - Y a-t-il des triggers sur la table ?
    - Le script est-il exécuté sur le serveur qui héberge la base MySQL ?

Discussions similaires

  1. Réponses: 0
    Dernier message: 28/02/2014, 16h17
  2. Pb pour compter le nb de ligne (COUNT)
    Par fages dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/06/2005, 13h44
  3. .bat pour l'import de fichier txt dans postgres
    Par pseudomh dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 25/03/2005, 00h02
  4. quel format doit avoir une BD pour l'importer avec copy?
    Par daknoom dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 03/02/2005, 19h41
  5. [C#] DataGrid: Conserver tri pour l'édition d'1 ligne
    Par gilder89 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 28/12/2004, 09h17

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