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

Outils MySQL Discussion :

mysqldump tronque le résultat


Sujet :

Outils MySQL

  1. #1
    lr
    lr est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2003
    Messages : 338
    Points : 114
    Points
    114
    Par défaut mysqldump tronque le résultat
    Salut,

    J'ai un server mysql 5 que je backup tous les soirs avec
    Code shell : Sélectionner tout - Visualiser dans une fenêtre à part
    mysqldump –database maBase –host 192.168.0.4 –user root –extended-insert –quick > backup.sql

    Je me suis rendu compte que le fichier de résultat est systématiquement tronqué à 3,4 MB (3 571 712 octets).

    Qqun aurait une idée de la cause de problème et de la façon de le résoudre ?

    Merci d'avance
    Lilian

  2. #2
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    Il y a de bonnes chances que ce soit un BLOB ou TEXT trop gros qui excède le max_allowed_packet. Il faudrait voir en augmentant sa valeur (il faudra probablement le faire pour mysqldump ET le serveur).

    mysqldump ne retourne aucune erreur ?

  3. #3
    lr
    lr est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2003
    Messages : 338
    Points : 114
    Points
    114
    Par défaut
    Citation Envoyé par Sivrît Voir le message
    Il y a de bonnes chances que ce soit un BLOB ou TEXT trop gros qui excède le max_allowed_packet. Il faudrait voir en augmentant sa valeur (il faudra probablement le faire pour mysqldump ET le serveur).

    mysqldump ne retourne aucune erreur ?
    Merci pour ta réponse,

    Ce qui est bizarre, c'est que ma base ne contient aucun champs particulièrement gros... il y a bien qq champs de commentaires dans certaines tables mais aucun ne contient de gros volume. Je crois même qu'ils sont tous de 255 caractères.

    De plus, le dump est chaque jours tronqué à un endroit différent puisque le fichier de résultat fait toujours exactement la même taille alors que le volume des données de la base change (plutôt à la hausse mais lentement).

    Jusqu'à il y a qq jours la coupure se faisait dans les données d'une table d'association (qui donc ne contient que des clefs étrangères) après la requête créant sa structure. Mais maintenant, le volume ayant un peu augmenté, la coupure se fait dans la requête de création de la structure de la dernière table.

    Sinon je n'ai jamais touché à max_allowed_packet qui doit (je ne suis pas devant la machine actuellement) donc avoir sa valeur par défaut qui semble être 16M. Beaucoup plus que les 3,4M que j'arrive à récupérer...

  4. #4
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    Citation Envoyé par lr Voir le message
    Ce qui est bizarre, c'est que ma base ne contient aucun champs particulièrement gros... il y a bien qq champs de commentaires dans certaines tables mais aucun ne contient de gros volume. Je crois même qu'ils sont tous de 255 caractères.

    Sinon je n'ai jamais touché à max_allowed_packet qui doit (je ne suis pas devant la machine actuellement) donc avoir sa valeur par défaut qui semble être 16M. Beaucoup plus que les 3,4M que j'arrive à récupérer...
    Effectivement sans blob les risques sont moindre... Comme les INSERT sont regroupés pour être plus efficaces il peut y avoir de gros paquets même si chaque enregistrement pris indépendamment est petit et si le serveur ou mysqldump utilise une variable trop petite... Cela dit hors trop gros objet monolithique mysqldump doit gérer donc ça devrait être autre chose.


    Citation Envoyé par lr Voir le message
    De plus, le dump est chaque jours tronqué à un endroit différent puisque le fichier de résultat fait toujours exactement la même taille alors que le volume des données de la base change (plutôt à la hausse mais lentement).

    Jusqu'à il y a qq jours la coupure se faisait dans les données d'une table d'association (qui donc ne contient que des clefs étrangères) après la requête créant sa structure. Mais maintenant, le volume ayant un peu augmenté, la coupure se fait dans la requête de création de la structure de la dernière table.
    Là c'est perturbant... Une coupure en plein milieu de la définition d'une table j'avais jamais vu

    Si le fichier tronqué a une taille fixe à l'octet près ça fait penser à un problème local, un truc qui empêche le fichier de grossir au delà... seulement il est pas si gros que ça. Plus de place ? ça se serait vu. Un quota sur le disque ? idem... Il y a un anti-virus qui tourne sur le client ou le serveur ?

    Je sèche un peu. Eventuellement il y a l'option "-v" pour que mysqldump soit plus bavard. "--debug-info" peut-être aussi. Sinon il pourrait y avoir des infos dans le log d'erreur du serveur (s'il a coupé la connexion il peut dire pourquoi).

    Une section "[mysqldump]" dans un "my.cnf" ou "my.ini" bien caché avec des options bizarres ?

    Heu... bonne chance ?

  5. #5
    lr
    lr est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2003
    Messages : 338
    Points : 114
    Points
    114
    Par défaut
    Merci pour ta réponse et désolé pour le délai.

    Mes utilisateurs font des backups tous les jours. Jusqu'ici, ils étaient toujours tronqués. Là, je viens d'essayer et c'est passé comme une lettre à la poste.

    C'est la première fois depuis bien bien longtemps.

    Je ne sais pas pourquoi, peut-être une question d'espace disque ?

    Si j'éclaircis ce mystère je reviendrai ici.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 320
    Points : 311
    Points
    311
    Par défaut
    J'ai exactement le même problème, sauf que le dump est à 5270kb...

    Si quelqu'un a la solution je suis preneur.
    *.Har(d)t
    ---
    "Je donnerais mon bras droit pour être ambidextre"
    Brian W. Kernighan

Discussions similaires

  1. Résultat de requêtes tronqué
    Par idref dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 18/07/2008, 15h03
  2. Résultat de requête tronqué
    Par sam01 dans le forum Requêtes
    Réponses: 4
    Dernier message: 14/05/2008, 20h45
  3. résultat tronqué lors d'un spool
    Par petit arbre dans le forum SQL
    Réponses: 4
    Dernier message: 26/06/2007, 13h23
  4. [SQL] Le résultat de la requête est tronqué lorsqu'on l'affiche dans un input text
    Par JackBeauregard dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 15/01/2007, 19h51
  5. [SQL-Server] [SQLServer] un résultat (une string) toujours tronqué
    Par thomas_b dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 15/12/2006, 15h31

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