1. #1
    Responsable Livres

    Avatar de MaitrePylos
    Homme Profil pro
    DBA & Dev PHP
    Inscrit en
    juin 2005
    Messages
    4 477
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA & Dev PHP
    Secteur : Service public

    Informations forums :
    Inscription : juin 2005
    Messages : 4 477
    Points : 10 180
    Points
    10 180

    Par défaut Exécuter script bash au départ d'un trigger

    Bonjour,
    Je dois créer un connecteur entre une source de données MariaDB et MongoDB ceci afin d'alimenter la Mongo lors de modification de MariaDB.
    Mon premier réflexe est de créer un déclencheur après l'insertion pour jouer des script qui vont faire la phase ETL.

    Du coup j'essaye d’exécuter la commande MySQL "\!" , dans une consoleMySQL ceci fonctionne bien

    Donc j'essaye ceci dans ma db

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    DELIMITER | 
    CREATE TRIGGER connecteurProfilInsert 
    AFTER INSERT ON abex
    BEGIN 
    \! php -v;
    END
    |
    DELIMITER ;
    Mais j'obtient l'erreur suivante

    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
     
    >[Erreur] Lignes de script: 1-8 ---------------------
     You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'DELIMITER | 
    CREATE TRIGGER connecteurProfilInsert 
    AFTER INSERT ON abex
    BEGIN 
    ' at line 1 
     
     Avertissements: ---> 
       W (1): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'DELIMITER | 
    CREATE TRIGGER connecteurProfilInsert 
    AFTER INSERT ON abex
    BEGIN 
    ' at line 1
              <--- 
     [Exécuté: 24/08/2017 11:32:04] [Exécution: 0ms]

    Auriez-vous une piste ?

    Merci.

  2. #2
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    novembre 2005
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : novembre 2005
    Messages : 87
    Points : 96
    Points
    96

    Par défaut

    Salut,
    alors '\!' permet de sortir de ta console et de faire des appel système : https://dev.mysql.com/doc/refman/5.7...commands.htmll "system (\!) Execute a system shell command."
    donc en gros en dehors de ton utilitaire en ligne de commande tu ne peux pas faire cela.


    Je ne suis pas sur que tu aie, comme dans oracle, de moyen d'appeler du système directement depuis la db.

  3. #3
    Responsable Livres

    Avatar de MaitrePylos
    Homme Profil pro
    DBA & Dev PHP
    Inscrit en
    juin 2005
    Messages
    4 477
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA & Dev PHP
    Secteur : Service public

    Informations forums :
    Inscription : juin 2005
    Messages : 4 477
    Points : 10 180
    Points
    10 180

    Par défaut

    Ok merci.

Discussions similaires

  1. Exécuter un script bash root + sécuritée
    Par Soull dans le forum Fonctions
    Réponses: 1
    Dernier message: 12/02/2011, 23h22
  2. Script Bash pour exécuter requete SQL sur une base Oracle
    Par Flipmode dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 28/11/2008, 17h18
  3. comment exécuter un bash script à l'intérieur de ma classe java?
    Par moradbe dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 04/03/2007, 04h37
  4. [CGI] Exécuter un script bash depuis le web
    Par Marco33 dans le forum Syntaxe
    Réponses: 2
    Dernier message: 08/02/2007, 22h16
  5. Réponses: 8
    Dernier message: 27/07/2006, 09h40

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