Ich möchte die event_scheduler
global auf ON
setzen, auch wenn MySQL neu gestartet wird; Wie kann ich das erreichen?Wie global event_scheduler = ON gesetzt wird, auch wenn MySQL neu gestartet wird?
Antwort
Einweg - Sie können Ihre Systemvariablen festlegen und diese Variablen verwenden, wenn es eine Möglichkeit gibt, Ihren MySQL-Server neu zu starten.
Hier Link Using system variables in mysql
"Wenn Sie eine globale Systemvariable ändern, wird der Wert gespeichert und für neue Verbindungen verwendet, bis der Server neu gestartet wird. (Um eine globale Systemvariableneinstellung dauerhaft zu machen, sollten Sie sie in einer Optionsdatei festlegen)" – mvmn
Sie
event_scheduler=ON
in my.ini oder my.cnf festlegen können, starten Sie den Server für die Einstellung wirksam wird.
Einmal festgelegt event_scheduler
bleibt immer ON
egal, ob Ihr Server neu gestartet wird.
Sie können auch
SET GLOBAL event_scheduler = 1;
Dann nutzen Sie Ihren Server neu starten, damit die Einstellung wirksam wird.
Auf unserem Windows Server 2012-System funktionierte keine dieser oder anderer Lösungen. Dann sah ich den Registrierungseintrag für Start-up:
"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.6\my.ini" MySQL56
Der Trick, das Böse, ProgramData
ist. Es ist nicht Program Files
. Suchen Sie in den Programmdateien, und Sie werden eine my-default.ini
Datei sehen, die dort hingestellt wird, nur um Sie königlich zu vermasseln.
Der Trick ist, den Pfad in der Registry zu finden, was für mich war: HKEY_LOCAL_MACHINE\SYSTEM\Services\MySQL56
Öffnen Sie Ihre /etc/mysql/my.ini Datei und fügen:
event_scheduler = on
unter der [mysqld] Abschnitt
(unter mysql getestet 5.5.35-0 + wheezy1 - Debian)
In einigen Linux-Distributionen befindet sich die Datei unter /etc/my.cnf – RonEskinder
War für mich notwendig, MariaDB zu verwenden, die Zeile innerhalb des [ mysqld] Abschnitt wie vorgeschlagen. –
/usr/local/etc/mysql für FreeBSD – Alpha2k
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
diese Zeile hinzufügen am Ende der Datei hinzu:
event_scheduler=ON
als Neustart und prüfen, ob Daemon nach einem Neustart gestartet wird:
Log in mysql bash:
mysql -u <user> -p
Dann den Befehl ausführen:
SHOW PROCESSLIST;
Jetzt sollten Sie den Event-Scheduler-Daemon in der Liste
in einer Richtung sehen - Sie können Systemvariablen festlegen und diese Variablen bei Bedarf verwenden (http://dev.mysql.com/doc/refman/5.0/en/using-system-variables.html). – Suleman