recharger un dump dans une base de donné mysql
Répondre à la discussion
Affichage des résultats 1 à 12 sur 12

recharger un dump dans une base de donné mysql



  1. #1
    chatelot16

    recharger un dump dans une base de donné mysql


    ------

    bonjour

    j'ai un wiki hebergé chez ovh et je voudrait y remettre le contenu qui a été sauvegardé sous forme de fichier.dump

    comment faire ?

    le phpmyadmim disponible chez ovh a une fonction importé limité a 16Mo

    j'ai vu dans different site , une requete SQL du genre
    mysql -h=host -u=user -p=pass base_de_donnees < fichier_dump
    mais quand j'y met mes donné la reponse est toujours erreur de syntaxe

    quelle commande sql plus simple faut il essayer pour comprendre un peu la syntaxe , verifier les morceau sans tapper betement une ligne trop longue ou il manque toujours un truc ?

    merci

    -----
    Les arbres sont mes capteurs solaires préférés

  2. #2
    bisou10

    Re : recharger un dump dans une base de donné mysql

    Sérieux, tu ne comprends pas la syntaxe ?

    host, user, pass, db, et ton fichier en entrée: 5 paramètres indispensables. Difficile de faire plus simple ou plus cryptique non ? Juste les informations de base.
    Dernière modification par bisou10 ; 22/04/2014 à 16h28.

  3. #3
    chatelot16

    Re : recharger un dump dans une base de donné mysql

    c'est le genre de reponse constructive qui me plait

    quand je tape -h=mysql51-53.pro -u=chatelotmod2 -p=**** chatelotmod2 < chatelotmod2.2014-04-21-13h06.dump ça me repond erreur de syntaxe sans me preciser ou

    bien sur je tape avec le vrai mot de passe et non les****

    heureusement sur un autre forum il y a eu une autre reponse qui m'a permis de savoir ce qu'etait host , car il n'etait pas forcement evident de savoir que c'etait le nom d'un serveur de chez ovh , et nom l'url de mon site

    on m'a donné un script php qui a marché avec les donnée que je viens d'ecrire
    http://forum.ovh.com/showthread.php?...%E9#post606550

    maintenant pour ne pas mourrir idiot j'aimerai bien que celui qui trouve ça facile me montre cette commande SQL sans erreur de syntaxe !
    Les arbres sont mes capteurs solaires préférés

  4. #4
    Bluedeep

    Re : recharger un dump dans une base de donné mysql

    Déjà ce n'est pas une syntaxe SQL mais une commande; donc , a priori, tu ne dois pas l'exécuter dans le contexte de l’interpréteur SQL. Dans quel contexte exécute tu cette commande ? (je précise que je ne connais pas du tout MySql, mais je sais que c'est un SGBD assez bizarre par certains cotés donc ce que je dis n'est pas forcémenent exact).

    Il y a des chances que le problème vienne de là : cette commande doit être exécuté dans le contexte du shell (comme je ne sais pas quel type de serveur tu utilises, je ne risque pas de te répondre).

    Merci de copier le message d'erreur dans son intégralité et la commande appelée dans son intégralité (sans les mots de passes, bien sur, mais au dessus visiblement le nom de la commande - mysql - a été omis).

  5. A voir en vidéo sur Futura
  6. #5
    chatelot16

    Re : recharger un dump dans une base de donné mysql

    je colle cette commande dans le fenetre de requete SQL de phpmyadmin parce que c'est le seul endroit que j'ai vu pour le faire , et que je ne sais pas ou le faire d'autre

    la reponse est :
    debug : #1064 - 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 'mysql -h=mysql51-53.pro -u=chatelotmod2 -p==***** chatelotmod2 < chatelot.du' at line 1

    j'ai posé la question sur la messagerie de support de ovh et il m'ont donné la commande exacte , qui est repeté dans ce message d'erreur , mais il ne m'ont pas precisé ou il fallait la taper

    en informatique les message d'erreur sont toujours pour enduire d'erreur du genre erreur de syntaxe ça ne veut pas forcement dire qu'il y a une erreur de syntaxe , mais que la syntaxe est bonne pour un autre outil
    *
    mais ça ne dit toujours pas ou est le bon outil

    le shell je vois pour un ordinateur en linux ... mais pour le bazar chez OVH il est ou le shell ?
    Les arbres sont mes capteurs solaires préférés

  7. #6
    Bluedeep

    Re : recharger un dump dans une base de donné mysql

    Citation Envoyé par chatelot16 Voir le message
    je colle cette commande dans le fenetre de requete SQL de phpmyadmin parce que c'est le seul endroit que j'ai vu pour le faire , et que je ne sais pas ou le faire d'autre
    Ok, comme je pense que cette commande n'a rien à voir avec du SQL, elle ne doit pas être exécuter à cet endroit mais dans le shell du serveur directement.

    en informatique les message d'erreur sont toujours pour enduire d'erreur du genre erreur de syntaxe ça ne veut pas forcement dire qu'il y a une erreur de syntaxe , mais que la syntaxe est bonne pour un autre outil
    Essaye de taper cp fichier1 fichier2 dans la fenêtre de l'interpréteur SQL et tu auras aussi un message d'erreur bizarre. Ici c'est pourtant clair :

    - MySql n'a jamais été une commande SQL (il y a très peu de mots permettant de commencer une commande SQL; en gros SELECT, INSERT, UPDATE, DELETE, DROP, CREATE, GRANT, WITH et j'en oublie mais pas beaucoup); il est vrai qu'on peut aussi exécuter une proc stoc directement.(avec MySql je ne sais pas).
    - DOnc, il détecte une syntaxe dépourvue de sens et t'envoie le message adapté.
    - un ordinateur ne peut pas déviner ce que tu veux faire.

    le shell je vois pour un ordinateur en linux ... mais pour le bazar chez OVH il est ou le shell ?
    Demande à OVH, car je n'en ai pas la moindre idée. (et j'ignore quel OS utilise leurs serveurs).

  8. #7
    chatelot16

    Re : recharger un dump dans une base de donné mysql

    je verrai bien la reponse de OVH car je leur ai bien precisé dans ma derniere reponse que je tapais la commande qu'il mon donné dans la fenetre requete SQL de phpmyadmin

    en cherchant sur le net j'ai bien trouvé des sql qui marchent genre select 1+2; et ça me repond 3 ... mais c'est pour moi un tel charabia que je ne m'y retrouve pas

    c'est moins urgent maintenant puisque j'ai au moins un script qui marche pour faire ce qu'il me faut

    ça me gene aussi que le petit script de la doc OVH ne marche pas avec pourtant les même donné
    Les arbres sont mes capteurs solaires préférés

  9. #8
    bisou10

    Re : recharger un dump dans une base de donné mysql

    ce n'est pas une commande SQL. C'est une ligne shell d'administration à l'aide des outils MySQL. Le shell n'est pas disponible sous les mutualisés.

    si tu as un VPS ou un dédié, tu peux te connecter en SSH, en suivant la procédure décrite dans la doc: http://guide.ovh.com/ImportBaseMySQL

    tu as tout, même les conditions d'utilisation (Plan pour le SSH), le script PHP dont tu parles, et l'import via PMA.

  10. #9
    chatelot16

    Re : recharger un dump dans une base de donné mysql

    il sont bizare chez ovh
    sur leur mode d'emploi
    http://guide.ovh.com/BackupBaseMySQL
    on voit une icone "sauvegarder" qui marche très bien pour avoir un fichier.dump de sa base de donné

    a coté on voit une icone recréation de la base qui pourrait faire croire a une possibilité aussi simple de remettre le dump dans la base ... helas cette icone n'apparait pas quand je suis sur mon tableau de commande OVH

    en pataugant dans les doc OVH je n'ai trouvé que des solution qui ne marche pas
    1) commande mysql qui semble inaccessible sur hebergement mutualisé
    2) script PHP qui ne marche pas
    http://guide.ovh.com/ImportBaseMySQL
    Code:
    <?php
    echo "Votre base est en cours de restauration.......
    <br>";
    system("cat nom_de_la_base.sql | mysql --host=serveur_sql --user=nom_de_la_base --password=mot_de_passe nom_de_la_base");
    echo "C'est fini. Votre base est en place sur cet hébergement.";
    ?>
    3)script PHP qui marche donné sur le forum OVH
    http://forum.ovh.com/showthread.php?...%E9#post606550
    http://www.wordetweb.com/word-et-web...-script-FR.htm
    Code:
    <?php
    
       error_reporting(E_ALL); // Activer le rapport d'erreurs PHP
    
     
    
       $db_charset = "latin1"; /* mettre utf8 ou latin1 */
    
     
    
       $db_server         = "xxxxxx"; // Nom du serveur MySQL.  ex. mysql5-26.perso
    
       $db_name           = "xxxxxx"; // Nom de la base de données.  ex. mabase
    
       $db_username       = "xxxxxx"; // Nom de la base de données.  ex. mabase
    
       $db_password       = "xxxxxx"; // Mot de passe de la base de données.
    
     
    
       $cmd_mysql = "mysql";
    
     
    
       $archive_SQL      = "Sauve_Base.SQL";
    
     
    
       if (!is_file($archive_SQL))   echo "<font color=red>Le fichier <b>".$archive_SQL."</b> n'existe pas </font> <br> \n";
    
     
    
       echo " Restauration de la base <font color=red><b>$db_name</b></font> par <b>mysql</b> depuis le fichier <b>".$archive_SQL."</b> <br> \n";
    
       $commande = $cmd_mysql." --host=".$db_server."  --user=".$db_username." --password=".$db_password." ".$db_name."  < ".$archive_SQL;
    
       $CR_exec = system($commande);
    
    ?>
    question pour ne pas mourir idiot ? quel est le problème du premier script ?
    Les arbres sont mes capteurs solaires préférés

  11. #10
    bisou10

    Re : recharger un dump dans une base de donné mysql

    le premier script ?

    Il peut y en avoir plusieurs:
    - l'emplacement du fichier dump, son nom
    - le fait que 'cat' s'execute headless et donc que le fichier dump ne soit pas transféré à la commande mysql
    - une restriction quelconque comme la taille du fichier qui ne soit pas prise en compte par le cat
    - les paramètres (host, user, pwd, db) qui ne sont pas identiques

    Le second est un script amélioré mais qui utilise les mêmes paramètres, les mêmes outils, et une structure similaire.

  12. #11
    chatelot16

    Re : recharger un dump dans une base de donné mysql

    ça va peut etre permettre de faire un script plus pratique !

    ces 2 script on été essayé le même jour avec le même fichier.dump et les même info edité dans le script : il semble que utiliser fichier.dump marche comme fichier.sql , et comme le fichier donné par la sauvegarde de OVH est du genre fichier.dump je n'ai pas changé l'extension

    je ne peut pas faire d'essai aujourd'hui car ça me ferait modifier la base de donné actuelle ... j'y reviendrai dès que possible

    le premier script repond toujours "Votre base est en cours de restauration......." puis instantanément "C'est fini. Votre base est en place sur cet hébergement." meme si il n'a pas marché

    le 2eme script affiche quelque chose a l'ecran du naviguateur internet ou je l'ai appeler pour montrer qu'il a commencé puis ne repond plus rien : aucun signe que ça marche , et aucun signe quand c'est fini

    c'est uniquement en regardant l'etat de la base dans phpmyadmin que j'ai vu qu'elle etait en train de revenir

    je vois dans le texte du 2eme script un if pour verifier que le fichier a charger est bien la avant de passer a la commande principale

    il serait interressant de faire un script donnant des information pendant son fonctionnement

    autre question importante : est ce que cette façon de charger un fichier.dump ecrase completement toute trace de la base precedente ou faut il l'effacer avant ?

    dans le cas present j'avais effacé toutes les table une par une dans phpmyadmin pour etre sur de ne pas avoir de trace de l'etat precedent , mais c'est bien long ... ça serait bien si le chargement par le script ecrasait completement l'etat precedent de la base

    si j'etais sur que ce chargement ecrase tout sans laisser de trace du contenu precedent je pourrai faire des essai sans perdre mon temps a effacer table par table

    tout liens vers un site qui explique ce genre de chose serait le bienvenu

    merci
    Les arbres sont mes capteurs solaires préférés

  13. #12
    chatelot16

    Re : recharger un dump dans une base de donné mysql

    je viens de faire quelques essai : charger le dump de la base vide ne vide pas la base :

    il faut donc la vider avant , et pas besoin de suprimer table par table
    http://fr.openclassrooms.com/forum/s...-donnees-62450
    Avec phpMyAdmin, je clic sur le nom de ma base de données et en dessous du tableau qui s’affiche, je clic sur “Tout cocher” puis “vider” dans le menu déroulant et “tadam” sa a fait des chocapic!
    Les arbres sont mes capteurs solaires préférés

Discussions similaires

  1. Qt Connexion base de données Mysql
    Par defender19 dans le forum Programmation et langages, Algorithmique
    Réponses: 45
    Dernier message: 24/03/2012, 22h34
  2. base de données MySQL (methode merise)
    Par invite298957c6 dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 13/03/2010, 17h01
  3. ActionScript, Base de données MySQL
    Par invitee5fedd72 dans le forum Logiciel - Software - Open Source
    Réponses: 6
    Dernier message: 07/05/2009, 08h32
  4. MySQL / Forum / capacitée de la base ?
    Par invite8182365d dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 27/03/2009, 16h55
  5. importation base de donnée MySQL
    Par invite2b4add88 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 13/03/2007, 18h24