2015-04-23 21 views
5

Ich schreibe gerade meine Hauptaufgabe in meinem letzten Semester an meinem Studium (IT-Engineering mit Netzwerk) und arbeite derzeit mit MySQL.Shell Script/Befehl von MySQL ausführen Trigger/Gespeicherte Prozedur

Meine Frage ist: Ist es möglich, ein Shell-Skript/Befehl aus einem MySQL-Trigger/Prozedur auszuführen? Oder kann es aus einer CASE-Anweisung heraus geschehen? Ich habe im Internet gesucht und gelesen, dass es nicht ratsam ist, es zu tun. Aber ich brauche ein Skript, um eine Tabelle in einer Datenbank nach Warnungen zu überprüfen und dann die Leute zu warnen, wenn es welche gibt. Wenn es sowieso noch möglich ist, dann bin ich offen für Ideen. Jede Eingabe wird geschätzt :)

+0

mysql trigger/procedures kennt nur mysql-Befehle und für sie Shell-Befehl wird wie ein 'alian-Skript'. Innerhalb eines Shell-Skripts kann der mysql-Befehl jedoch ausgeführt werden. –

+0

Das klingt sehr ineffizient. Sie befinden sich bereits in der Datenbank: Sie möchten ein Shell-Skript forkieren, um eine Verbindung zur Datenbank herzustellen? Wie auch immer, ich fand eine interessante Frage zu [send email from mysql] (http://stackoverflow.com/questions/387483/how-to-send-email-from-mysql-5-1). –

+0

Danke für den Link. Es sieht interessant aus. Was ich will, ist das Skript zu überprüfen, jedes Mal, wenn es eine neue Zeile gibt und wenn es welche gibt, muss es ein VOIP-Telefon anrufen. Ich habe bereits das Skript für das Telefon ausgeführt. Aber ich kann sowieso nicht finden, MySQL in ein Skript einzuschließen, um nach diesen leeren Zeilen zu suchen und dann anzurufen, wenn es welche gibt. – capacop

Antwort

6

Sie diesen Blog zum Auslösen eines Shell-Skript von MySQL lesen: https://patternbuffer.wordpress.com/2012/09/14/triggering-shell-script-from-mysql/

ich für Ihre Anforderung denke nur ein Python/PHP/Perl-Skript schreiben, die MySQL-Verbindung herstellt Datenbank und Abfrage der Alarmtabelle für jede Warnung und entsprechend Warnmeldung auf dem Bildschirm oder E-Mail/SMS-Warnung zu senden.

+0

Danke für den Link! :) Ich habe es geschafft, die Daten aus der Tabelle abzurufen, sobald eine neue Zeile erscheint, und jetzt funktioniert es! – capacop