Problème export avec mysqldump

Résolu
isabe2000 -  
 morganistic -
Bonjour,
j'ai un souci avec la commande mysqldump. J'ai fait un petit site en PHP/MySQL et je souhaite ajouter un lien qui permettrait à l'administrateur de gérer ses sauvegardes directement sans avoir à passer par PhpMyAdmin.
J'ai vu la fonction mysqldump. Quand j'essaie de la taper directement dans PhpMyAdmin, j'ai sans arrêt une erreur même en tapant "mysqldump --help".
Quelqu'un peut m'aider ?

Merci
Isa
Configuration: Windows XP
Firefox 3.0.7

6 réponses

  1. afrodje Messages postés 759 Date d'inscription   Statut Membre Dernière intervention   168
     
    Voila ce que je fais :
    Sauvergarde dans un fichier .txt

    $page="";
    
    system ("\"C:\Program Files\EasyPHP1-8\mysql\bin\mysqldump.exe\" -u$db_user -p$db_pass --opt $database > monfichier.txt");
    //r - Ouvre en lecture seule, et place le pointeur de fichier au début du fichier.
    $ouverture = @fopen("monfichier.txt", "r");
    while (!feof($ouverture))
    { //on parcourt toutes les lignes jusqu'a la fin du fichier (feof)
          $page .= @fgets($ouverture); // lecture du contenu de la ligne
    }
    1
    1. isabe2000
       
      Bonjour, j'ai copié le code envoyé. Par contre, le fichier qui est créé est vide.
      Si j'exécute la commande directement dans cmd.exe, la création du fichier se déroule bien.
      Je ne vois pas trop. Est-ce qu'il n'y aurait pas un problème de droit ?
      Merci pour la réponse,
      Isabe
      0
  2. afrodje Messages postés 759 Date d'inscription   Statut Membre Dernière intervention   168
     
    Non je ne pense pas que c'est un problème de droit car le fichier est bien crée.

    Voila.
    0
    1. isabe2000
       
      En fait, je me suis trompée, le fichier ne se créé pas
      0
  3. Utilisateur anonyme
     
    Vérifie que le dossier dans lequel tu places ton fichier a bien les droits en écriture.

    As tu testée ce que te renvoie la fonction system (...), en faisant un echo, ex :

    $result = system (...);

    echo $result
    0
    1. isabe2000
       
      Ca me renvoie rien
      0
  4. Utilisateur anonyme
     
    1/
    As tu essayée d'exécuter la commande que tu passe en paramêtre de la fonction system() sur l'invite de commande Windows ?

    2/
    Sinon essaye sinon d'exécuter la même commande mais en remplacant la fonction system() par la commande exec(), avec les mêmes paramêtres, on ne sait jamais.
    0
    1. isabe2000
       
      j'ai essayé effectivement d'exécuter la commande directement dans une fenêtre cmd.exe et là ça marche.
      Sinon, j'ai essayé le exec à la place du system et j'ai toujours rien dans ma variable $result
      0
      1. isabe2000 > isabe2000
         
        ça y est j'ai trouvé, mon problème venait du chemin de mysqldump et du nom du dossier Program Files
        Pour ceux qui cherchent voici la ligne de commande à indiquer :
        $command = "C:\\PROGRA~1\\wamp\\bin\\mysql\\mysql5.0.51b\\bin\\mysqldump --host=$host --user=$user --password=$pass $db > $backup";
        Merci à ceux qui m'ont donné de l'aide
        0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. afrodje Messages postés 759 Date d'inscription   Statut Membre Dernière intervention   168
     
    Pense à mettre en résolu
    0
  7. morganistic
     
    bon ben là je tire mon chapeau car je n' ai plus qu' a dire merci! nickel les gars.
    0