it-swarm.com.de

Wie kann ich den Event Scheduler in MySQL dauerhaft aktivieren?

Wie schalte ich den Event Scheduler in mysqld dauerhaft ein? Ich verwende phpMyAdmin und habe ein Ereignis geplant, um Datensätze jeden Tag zu einer bestimmten Zeit von einer Tabelle in eine andere zu kopieren, aber die Datensätze werden nicht jeden Tag kopiert. Ich habe versucht, den Ereignisplaner einzuschalten.

SET GLOBAL event_scheduler="ON"; 

Wenn ich meinen PC neu starte, wird der Ereignisplaner deaktiviert. Wie mache ich es immer eingeschaltet und nicht ausgeschaltet, wenn mysqld neu gestartet wird?

6
user1930115

Das ist wirklich ziemlich einfach (einer dieser "Doh" -Momente :-)).

Sie setzen es in my.cnf wie hier beschrieben :

[mysqld]
..
.. other_stuff
..
event_scheduler=on
..
.. more_stuff
..

(oder my.ini wenn Sie Windows ausführen wie unten angegeben )

Aus der MySQL-Dokumentation hier haben Sie:

Wenn der Ereignisplaner eingeschaltet ist, wird der Ereignisplaner-Thread in der Ausgabe von SHOW PROCESSLIST als Dämonprozess aufgelistet und sein Status wird wie folgt dargestellt:

Ein daemon -Prozess wird im Hintergrund ausgeführt, wie hier beschrieben . Wird in Windows auch als Dienst bezeichnet

Also, lauf:

mysql> SHOW PROCESSLIST\G

und es sollte einen Eintrag wie diesen geben:

*************************** 2. row ***************************
     Id: 2
   User: event_scheduler
   Host: localhost
     db: NULL
Command: Daemon      <<<<<====== Note: Daemon!!!
   Time: 3
  State: Waiting for next activation
   Info: NULL
2 rows in set (0.00 sec)
8
Vérace