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

Administration MySQL Discussion :

Peut-on avoir confiance en mysqldump ?


Sujet :

Administration MySQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 19
    Points : 24
    Points
    24
    Par défaut Peut-on avoir confiance en mysqldump ?
    Bonjour,
    Déjà eu ce pb et je l'avais contourné mais cela m'inquiète un peu cette histoire.

    J'ai un script shell qui me sauvegarde mes bases linux en notamment une base mysql avec la commande mysqldump.

    Je viens d'essayer de créer une base sous mysql sous XP à partir de ce fichier dmp.
    Cela plante sur des lignes contenant des caractères spéciaux dans des champs text (je stocke du rtf ou du html donc avec moult caractères \ et autres).

    Je savais déjà qu'avec SQLyog cela merdait et j'avais contourné le pb avec l'option Copy Database de sqlyog.
    Mais j'aimerais quand meme être blindé question sauvegardes journalières et donc j'ai testé une restauration par rapport à un mysqldump classique. Et ça coince !!

    Est-ce un pb de paramètres ?

    mysqldump $L_OWNER --user=$L_OWNER --password=$L_OWNER --result-file=$L_MYSQLDUMPF

    pour l'instant j'utilise ça où nom de la base, user et password sont identiques et j'envoie cela dans un fichier.

    Ce n'est pas possible qu'il y ait un tel pb de sauvegarde avec mysql dès qu'il y a un petit caractère particulier ????

    Merci de vos réponses.
    Eric

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 440
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 440
    Points : 15 814
    Points
    15 814
    Par défaut
    tu pourrais nous montrer un petit exemple qui coince et le type de champs ?
    je demande le type de champs parce qu'apparemment avec "BLOB" il n'y a pas de problème

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 19
    Points : 24
    Points
    24
    Par défaut
    Merci de ta réponse.
    Ci après le fichier err généré. On le voit, cela plante tout de suite après la 1ere insertion car il y a un champs de type text qui contient des caractères rtf. Il double les \ mais apparemment cela ne suffit pas.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    INSERT INTO ALL_COL_COMMENTS VALUES (647,'CRM4US','MYMENU','MNU_TYPE','Type','{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1036{\\fonttbl{\\f0\\fswiss\\fprq2\\fcharset0 Arial;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs20 1 - Module non executable\\par\r\n2 - Fen\\\'eatre WD\\par\r\n3 - Document Word\\par\r\n4 - Feuille Excel\\par\r\n5 - Access\\par\r\n6 - Navigateur\\par\r\n7 - Executable\\par\r\n8 - Crystal Report\\par\r\n}\r\n');
    INSERT INTO ALL_COL_COMMENTS VALUES (648,'CRM4US','MYMENU','MNU_PARAM','Paramètres',NULL);
    INSERT INTO ALL_COL_COMMENTS VALUES
    [CUT]

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Error : You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near ';
    INSERT INTO ALL_COL_COMMENTS VALUES (648,'CRM4US','MYMENU','M
    Voilà ou s'arrête l'import.

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 440
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 440
    Points : 15 814
    Points
    15 814
    Par défaut
    dans le dump essaye de mettre \\ seul puis \' seul pour voir lequel gêne

    ca donne quoi si tu mets un type BLOB pour ton champ ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 19
    Points : 24
    Points
    24
    Par défaut
    Champs Blob, mème combat.
    En plus, cela ne plante pas au premier enreg contenant des champs en rtf.
    Vous pouvez reconstituer le pb avec ceci
    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
     
    CREATE TABLE T1ALL_COL_COMMENTS (
      COM_ID int(11) NOT NULL auto_increment,
      OWNER varchar(20) NOT NULL default '',
      TABLE_NAME varchar(20) NOT NULL default '',
      COLUMN_NAME varchar(20) NOT NULL default '',
      COMMENTS varchar(100) default NULL,
      DOCSUP blob,
      PRIMARY KEY  (COM_ID),
      UNIQUE KEY OWNER (OWNER,TABLE_NAME,COLUMN_NAME)
    ) TYPE=InnoDB ROW_FORMAT=DYNAMIC COMMENT='Table des commentaires colonnes';
     
    --
    -- Dumping data for table 'ALL_COL_COMMENTS'
    --
     
     
    INSERT INTO T1ALL_COL_COMMENTS VALUES (645,'CRM4US','MYMENU','MNU_ICO_CLOSE','N° Icone branche repliée','{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1036{\\fonttbl{\\f0\\fswiss\\fprq2\\fcharset0 Arial;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs20 ListeAjoute(\"MNU_ICO_OPEN\",gImage(\"LIVRE5-.BMP\"))\\par\r\nListeAjoute(\"MNU_ICO_OPEN\",gImage(\"LIVRE3-.BMP\"))\\par\r\nListeAjoute(\"MNU_ICO_OPEN\",gImage(\"ENGRENA-.BMP\"))\\par\r\nListeAjoute(\"MNU_ICO_OPEN\",gImage(\"EXCEL.ICO\"))\\par\r\nListeAjoute(\"MNU_ICO_OPEN\",gImage(\"WORD.ICO\"))\\par\r\nListeAjoute(\"MNU_ICO_OPEN\",gImage(\"DANGER-.ICO\"))\\par\r\nListeAjoute(\"MNU_ICO_OPEN\",gImage(\"DOS-.BMP\"))\\par\r\nListeAjoute(\"MNU_ICO_OPEN\",gImage(\"WEBFILE.ICO\"))\\par\r\nListeAjoute(\"MNU_ICO_OPEN\",gImage(\"BILAN.ICO\"))\\par\r\n}\r\n');
    INSERT INTO T1ALL_COL_COMMENTS VALUES (646,'CRM4US','MYMENU','MNU_ICO_OPEN','N° Icone branche dépliée',NULL);
    INSERT INTO T1ALL_COL_COMMENTS VALUES (647,'CRM4US','MYMENU','MNU_TYPE','Type','{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1036{\\fonttbl{\\f0\\fswiss\\fprq2\\fcharset0 Arial;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs20 1 - Module non executable\\par\r\n2 - Fen\\\'eatre WD\\par\r\n3 - Document Word\\par\r\n4 - Feuille Excel\\par\r\n5 - Access\\par\r\n6 - Navigateur\\par\r\n7 - Executable\\par\r\n8 - Crystal Report\\par\r\n}\r\n');
    INSERT INTO T1ALL_COL_COMMENTS VALUES (652,'CRM4US','MYMENU','MNU_DESCRIPTION','Description de l\'option',NULL);
    et cela ne plante pas sur le 645 qui contient du rtf mais sur le 647.
    En fait le message indique l'erreur INSERT sur le 652 car il n'interprète pas un nouvel ordre.

    et voici le contenu d'origine de la zone qui provoque le pb :
    {\rtf1\ansi\ansicpg1252\deff0\deflang1036{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}}
    \viewkind4\uc1\pard\f0\fs20 1 - Module non executable\par
    2 - Fen\'eatre WD\par
    3 - Document Word\par
    4 - Feuille Excel\par
    5 - Access\par
    6 - Navigateur\par
    7 - Executable\par
    8 - Crystal Report\par
    }

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 440
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 440
    Points : 15 814
    Points
    15 814
    Par défaut
    merci pour l'exemple je vais essayer chez moi .. mais pas avant la semaine prochaine

    je ne t'oublierai pas parce que j'avais prévu de faire un système de sauvegarde automatique avec mysqldump donc faut pas que je l'utilise si ca ne fonctionne pas

  7. #7
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 440
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 440
    Points : 15 814
    Points
    15 814
    Par défaut
    et voila j'ai fait les tests et ce n'est pas gagné pour toi

    j'ai pris exactement le code que tu m'a donné le 21 à 17h23 et je l'ai testé avec mysqlcc, phpmyadmin et en ligne de commande et je n'ai eu aucune erreur

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 19
    Points : 24
    Points
    24
    Par défaut
    Merci de ton suivi.

    Je viens effectivement de télécharger mysqlcc et cela fonctionne.
    Le problème est donc à chercher du côté de SQLyog.

    Dommage, car j'apprécie beaucoup ce produit mais côté dump et execution de script batch, il y a des bogues.

    Eric

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

Discussions similaires

  1. Est-ce une configuration en laquelle on peut avoir confiance ?
    Par Danny Blue dans le forum Windows Forms
    Réponses: 3
    Dernier message: 29/01/2008, 20h03
  2. Peut-on avoir une rebrique PeopleSoft dans le forum ?
    Par afaraji dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 1
    Dernier message: 28/12/2005, 12h07
  3. Peut-on avoir un bouton de confirmation ?
    Par illight dans le forum Access
    Réponses: 2
    Dernier message: 28/09/2005, 16h44
  4. Réponses: 3
    Dernier message: 23/03/2005, 15h25
  5. [Debutant][Swing][Jtable]Peut-on avoir 2 forecolor ?
    Par britou dans le forum Composants
    Réponses: 7
    Dernier message: 14/05/2004, 16h03

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