Über Ereignisse: MySQL 5.1 hat begonnen, das Konzept von Ereignissen einzuführen. Ein Ereignis ist ein „Zeitauslöser“, der sich vom Ereignisauslöser von Auslösern unterscheidet. Ein Ereignis ähnelt der geplanten Linux-Crontab-Aufgabe und wird für die Zeitauslösung verwendet. Durch alleinige Verwendung oder den Aufruf einer gespeicherten Prozedur wird die zugehörige SQL-Anweisung oder gespeicherte Prozedur zu einem bestimmten Zeitpunkt ausgelöst. Löschen Sie zunächst die vor 2 Tagen aufgezeichneten SQL-Anweisungen (webserver_monitormemory ist der Tabellenname, time ist das Zeitfeld): Löschen aus webserver_monitormemory, wobei DATE(Uhrzeit) <= DATE(DATE_SUB(NOW(),INTERVAL 2 Tage)); Erstellen Sie eine gespeicherte Prozedur: TRENNUNGSZEICHEN // PROZEDUR ERSTELLEN autodel() -> BEGIN -> löschen aus webserver_monitormemory, wobei DATE(Uhrzeit) <= DATE(DATE_SUB(NOW(),INTERVAL 2 Tage)); -> ENDE -> // TRENNUNGSZEICHEN ; Erstellen Sie ein Ereignis und passen Sie die gespeicherte Prozedur an, die Autodel jeden Tag ausführt: EREIGNIS ERSTELLEN `event_auto_del_memorydata` JEDEN TAG PLANMÄSSIG BEGINNT '20.11.2017 00:00:00' BEI ABSCHLUSS NICHT BEIBEHALTEN, AKTIVIEREN, AUFRUFEN, autodel(); Es gibt 4 Möglichkeiten den Veranstaltungsplan (Scheduler) zu starten. Der Tastenwert 1 bzw. ON bedeutet „Ein“, 0 bzw. OFF bedeutet „Aus“: SETZEN SIE GLOBAL event_scheduler = 1; SET @@global.event_scheduler = 1; Setzen Sie den Event_Scheduler global auf ON. SETZEN Sie @@global.event_scheduler = EIN; Um zu prüfen, ob der Ereignisplan (Scheduler) aktuell aktiviert ist, haben Sie drei Möglichkeiten: VARIABLEN WIE „event_scheduler“ ANZEIGEN; Wählen Sie @@event_scheduler; PROZESSLISTE ANZEIGEN; Eröffnung und Abschluss der Veranstaltung: ALTER EVENT event_auto_del_memorydata ON COMPLETION PRESERVE ENABLE; //Ein Ereignis aktivieren ALTER EVENT event_auto_del_memorydata ON COMPLETION PRESERVE DISABLE; //Ein Ereignis deaktivieren Dies ist das Einfachste, aber auch das Wichtigste. Wir müssen den Timer manuell starten, sonst funktioniert er nicht. ALTER EVENT event_time_clear_data ON ABGESCHLOSSENHEIT BEWAHREN AKTIVIEREN; Darüber hinaus lautet der Code zum Ausschalten des Timers: ALTER EVENT event_time_clear_data ON ABSCHLUSS BEWAHREN DEAKTIVIEREN; Löschen Sie die gespeicherte Prozedur: DROP-VERFAHREN pro_clear_data; Ereignis löschen: Ereignis löschen, wenn vorhanden event_time_clear_data1 Zusammenfassen Oben ist die vom Herausgeber eingeführte Vorgehensweise zum automatischen Löschen von Datensätzen vor einer bestimmten Zeit unter MySQL. Ich hoffe, sie wird allen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Das könnte Sie auch interessieren:
|
<<: Nginx-Proxy-Axios-Anforderung und Vorsichtsmaßnahmen
>>: So verstehen Sie das Ref-Attribut von React genau
In diesem Artikelbeispiel wird der spezifische Co...
Grundlegende Einführung in robots.txt Robots.txt i...
Vor kurzem wollte ich Goaccess verwenden, um Ngin...
Der gesamte Inhalt dieses Blogs ist unter Creativ...
1. Einleitung Manchmal müssen Sie eine Servicesch...
Einführung Die meisten Leute, die schon einmal Da...
Hintergrund Für die virtuelle VirtualBox-Maschine...
Über Ereignisse: MySQL 5.1 hat begonnen, das Konz...
Inhaltsverzeichnis 1. Erstellen Sie zunächst mit ...
Aufgezeichnetes MySQL 5.7.9-Installationstutorial...
Mysql legt den Booleschen Typ fest 1. Tinyint-Typ...
Da das Problem ziemlich plötzlich auftrat und das...
Die Wirkung ist ganz einfach: Kopieren Sie einfach...
# Die folgenden Beispiele gelten für die x64-Bit-...
Inhaltsverzeichnis Vorne geschrieben Anmeldeübers...