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

Linux Discussion :

Injection de donnée MySQL via script bash


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de loopback
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 170
    Par défaut Injection de donnée MySQL via script bash
    Bonjour,
    Après avoir créer un utilisateur système via un script bash, je souhaiterais injecter des données relatives à son compte FTP dans une base mysql mais je ne sais pas quel commande il faut utiliser pour ça.

    Voici la ligne que je dois injecter à mysql:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO `ftpd` (`User`, `status`, `Password`, `Uid`, `Gid`, `Dir`, `ULBandwidth`, `DLBandwidth`, `comment`, `ipaccess`, `QuotaSize`, `QuotaFiles`, `ULRatio`, `DLRatio`) VALUES ('toto', '1', MD5('motdepasse'), '1003', '1003', '/var/www/vhosts/toto', '100', '100', '', '*', '50', '0', '0', '0');
    Pour se connecter à la base je peu faire ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/bin/mysql -A -uTOTO -hlocalhost -pPASSWORD -Ddatabase < /path/to/donnee_a_injecter
    Bref, quelle est la meilleure méthode ?
    Faut -il appeler un autre script pour ça ?
    Merci

  2. #2
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 830
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 830
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par loopback Voir le message
    Bonjour,
    Après avoir créer un utilisateur système via un script bash, je souhaiterais injecter des données relatives à son compte FTP dans une base mysql mais je ne sais pas quel commande il faut utiliser pour ça.

    Voici la ligne que je dois injecter à mysql:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO `ftpd` (`User`, `status`, `Password`, `Uid`, `Gid`, `Dir`, `ULBandwidth`, `DLBandwidth`, `comment`, `ipaccess`, `QuotaSize`, `QuotaFiles`, `ULRatio`, `DLRatio`) VALUES ('toto', '1', MD5('motdepasse'), '1003', '1003', '/var/www/vhosts/toto', '100', '100', '', '*', '50', '0', '0', '0');
    Pour se connecter à la base je peu faire ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/bin/mysql -A -uTOTO -hlocalhost -pPASSWORD -Ddatabase < /path/to/donnee_a_injecter
    Bref, quelle est la meilleure méthode ?
    Faut -il appeler un autre script pour ça ?
    Merci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "insert into machin (truc, chose) values ('bidibidi", 'badaba')" |mysql -Ddatabase
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  3. #3
    Membre confirmé Avatar de loopback
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 170
    Par défaut
    merci pour l'aide,
    mais en fait il ne reconnait pas la commande mysql car le serveur mysql se trouve sur une autre machine du réseau.

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 830
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 830
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par loopback Voir le message
    merci pour l'aide,
    mais en fait il ne reconnait pas la commande mysql car le serveur mysql se trouve sur une autre machine du réseau.
    On se fout de l'endroit où se trouve le serveur mysql puisque tu utilises le client mysql (qui doit normallement se trouver sur ton host) et qu'un client sur un host x peut très bien taper sur un host y avec l'option -h (d'ailleurs dans ton exemple, tu tape -hlocalhost ce qui montre bien que ton serveur est local)

    Sinon il te suffit d'envoyer le "echo" par rsh sur le host où se trouve ta commande mysql
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rsh host "echo \"..........\"`|mysql ..."
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  5. #5
    Membre confirmé Avatar de loopback
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 170
    Par défaut
    Salut,
    désolé de mon ignorance mais en tappant ta commande il me met le prompt:
    >

    Je n'ai pas encore saisi.

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 830
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 830
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par loopback Voir le message
    Salut,
    désolé de mon ignorance mais en tappant ta commande il me met le prompt:
    >

    Je n'ai pas encore saisi.
    Il s'agit du prompt secondaire qui montre que la commande n'est pas terminée
    Cela peut provenir de plusieurs choses
    1) la commande prend plusieurs lignes comme un "if...fi" ou "while do...done"
    2) la commande est mal tapée (tu ouvres un guillemet sans le fermer)

    Suis pas certain de la syntaxe exacte (quottes, backquottes) donc essaye ça (copier/coller)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "INSERT INTO 'ftpd' ('User', 'status', 'Password', 'Uid', 'Gid', 'Dir', 'ULBandwidth', 'DLBandwidth', 'comment', 'ipaccess', 'QuotaSize', 'QuotaFiles', 'ULRatio', 'DLRatio') VALUES ('toto', '1', MD5('motdepasse'), '1003', '1003', '/var/www/vhosts/toto', '100', '100', '', '*', '50', '0', '0', '0');" |/usr/bin/mysql -A -uTOTO -hlocalhost -pPASSWORD -Ddatabase
    Si ça marche pas, alors essaye ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "INSERT INTO ftpd (User, status, Password, Uid, Gid, Dir, ULBandwidth, DLBandwidth, comment, ipaccess, QuotaSize, QuotaFiles, ULRatio, DLRatio) VALUES ('toto', '1', MD5('motdepasse'), '1003', '1003', '/var/www/vhosts/toto', '100', '100', '', '*', '50', '0', '0', '0');" |/usr/bin/mysql -A -uTOTO -hlocalhost -pPASSWORD -Ddatabase
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

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

Discussions similaires

  1. [VB6][MYSQL] recuperer des données MySQL via PHP
    Par psykotox dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 18/01/2008, 11h25
  2. [MySQL] Recherche BDD MySQL via script PHP
    Par poitierjohan dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 05/10/2007, 12h12
  3. recuperer des données MySQL via PHP en VB6
    Par pobrouwers dans le forum Requêtes
    Réponses: 1
    Dernier message: 06/04/2007, 12h33
  4. Connexion à une base de données mysql via access
    Par eautret dans le forum Access
    Réponses: 2
    Dernier message: 07/04/2006, 10h02
  5. gérer une base de donnée MySql via C++
    Par thiane dans le forum Bibliothèques
    Réponses: 9
    Dernier message: 19/05/2005, 16h19

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