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 :

mysqldump et Command Line Client


Sujet :

MySQL

  1. #1
    Invité
    Invité(e)
    Par défaut mysqldump et Command Line Client
    Bonjour !

    J'ai une base de données sur mon portable. J'ai besoin de mettre cette base de données sur un autre poste. J'ai donc fait un export depuis phpMyAdmin.

    Sur l'autre poste, j'utilise command line client pour importer la base de données avec mysqldump. Voilà ce que je fais :

    mysql> mysqldump bd_test < "C:\Documents and Settings\user\Desktop\fichier.sql";
    J'ai un message qui me dit qu'il y a une erreur de syntaxe.

    J'ai été voir la doc mais à aucun moment ils ne parlent de < alors que je suis quasi certain qu'on peut l'utiliser.

  2. #2
    Invité
    Invité(e)
    Par défaut
    J'utilise cette syntaxe (sous windows) :

    mysqldump.exe -uuser -ppassword --add-drop-table database -r nom_du_fichier

    et elle passe très bien.
    Si la redirection marche, fais la dans le bon sens :
    mysql> mysqldump bd_test > "C:\Documents and Settings\user\Desktop\fichier.sql";

    parce que ta commande, avec < ne peux pas marcher, tu envoie sur ce pauvre mysqldump ton fichier, au lieu de demander, avec >, la redirection vers le fichier.

  3. #3
    Invité
    Invité(e)
    Par défaut
    @Florian : Merci pour ta réponse. Mais enfait c'est l'inverse que je veux faire. J'ai mon fichier sql et j'aimerais l'importer dans ma base de données. Ce que tu décris, c'est comment mettre la base de données dans le fichiers sql

  4. #4
    Invité
    Invité(e)
    Par défaut
    Pardon, lu trop vite.
    Importer = mysqlimport

  5. #5
    Invité
    Invité(e)
    Par défaut
    @Florian : Merci ! J'ai testé cette syntaxe :

    mysql> mysqlimport bd_truc "C:\Chemin to fichier\fichier.sql";
    Mais ça ne fonctionne pas et je ne comprends pas pourquoi.

    Dans la doc ils disent :

    shell> mysqlimport [options] db_name textfile1 [textfile2 ...]

  6. #6
    Responsable .NET

    Avatar de Hinault Romaric
    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2007
    Messages
    4 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 4 570
    Points : 252 372
    Points
    252 372
    Billets dans le blog
    121
    Par défaut
    je crois avoir lue quelque par que l'on peut en command line utiliser la commande source suivie du nom du fichier pour importé un fichier .sql
    Vous souhaitez participer aux rubriques .NET ? Contactez-moi

    Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
    Mon blog, Mes articles, Me suivre sur Twitter
    En posant correctement votre problème, on trouve la moitié de la solution

  7. #7
    Membre habitué

    Profil pro
    Inscrit en
    Février 2009
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2009
    Messages : 129
    Points : 159
    Points
    159
    Par défaut
    mysqldump, c'est pour exporter des données. Typiquement, ça s'utilise de la manière suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mysqldump options db > fichier.sql
    Tant qu'on n'utilise pas l'option --tab, on obtient un dump sql qui peut être importé en utilisant par exemple le client mysql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mysql -uxxx -p db < fichier.sql
    Quand on utilise mysqldump avec l'option --tab=/chemin, on obtient pour chaque table exportée un fichier sql qui contient la structure de la table et un fichier txt qui contient les données.
    Le fichier sql peut être importé avec le client mysql comme expliqué ci-dessus.
    Le fichier txt peut être importé avec mysqlimport :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mysqlimport -uxxx -p db fichier.txt
    J'espère avoir éclairci la situation (et ne pas avoir fait d'erreur )

    Stéphane

  8. #8
    Invité
    Invité(e)
    Par défaut
    Merci beaucoup, je crois avoir à peu près compris!!

    Par contre j'essais mais j'ai toujours une erreur dans ma syntaxe. Pouvez-vous m'aider?

    mysql> mysql -uxxx -p nomDeMaBDD < "C:\fichier.sql";

  9. #9
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par babastutz Voir le message
    Merci beaucoup, je crois avoir à peu près compris!!

    Par contre j'essais mais j'ai toujours une erreur dans ma syntaxe. Pouvez-vous m'aider?

    Salut,

    la commande en question doit être executé dans la console dos et non dans la console mysql.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    DOS> mysql -uxxx -p nomDeMaBDD < "C:\fichier.sql";
    Si tu es déjà dans une console mysql, il faut utiliser la commande source.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    DOS> mysql -uuser -p db
    mysql> source "c:\chemin\vers\dump.sql"

  10. #10
    Membre actif Avatar de Roy Miro
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    273
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 273
    Points : 290
    Points
    290
    Par défaut
    tu peux aussi utiliser mysqlAdministrator, freeware dispo sur le site officiel normalement, pour save/load une base

  11. #11
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Mygale1978 Voir le message
    Salut,

    la commande en question doit être executé dans la console dos et non dans la console mysql.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    DOS> mysql -uxxx -p nomDeMaBDD < "C:\fichier.sql";
    Si tu es déjà dans une console mysql, il faut utiliser la commande source.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    DOS> mysql -uuser -p db
    mysql> source "c:\chemin\vers\dump.sql"
    J'ai essayé les deux méthodes mais aucune ne fonctionne...

    Failed to open file. Error : 22
    Apparemment, l'erreur 22 signifie : Invalid argument.

    J'ai essayé comme ceci :

    mysql> source "C:\Chemin de fou\Desktop\mod.sql"
    Ai-je oublié quelque chose ?

    @Roy Miro : Le problème c'est que mon fichier SQL est généré à partir de mysql_dump et que MySQL Administrator n'arrive pas à les ouvrir.

  12. #12
    Invité
    Invité(e)
    Par défaut
    Salut,

    après avoir fait le test, le chemin absolu vers le fichier dump ne semble pas fonctionner.

    J'ai donc procédé de cette manière:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    DOS>cd "C:\Chemin de fou\Desktop\"
    DOS> mysql -uuser -p db
    password:
    mysql> source mod.sql
    Là ça devrait passer.

Discussions similaires

  1. Réponses: 1
    Dernier message: 30/03/2007, 14h52
  2. Accents Command Line depuis un script Python
    Par nicou50 dans le forum Général Python
    Réponses: 6
    Dernier message: 29/12/2006, 10h41
  3. unrecognized command line.....DEVC++
    Par Guillaume602 dans le forum Dev-C++
    Réponses: 8
    Dernier message: 20/11/2005, 15h18
  4. newbie : fichier xml vers html via command-line
    Par morti dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 08/11/2005, 07h34

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