CREATE DATABASE IF NOT EXISTS events_test; USE events_test; SET GLOBAL event_scheduler=OFF; SHOW VARIABLES LIKE 'event_scheduler'; Variable_name Value event_scheduler OFF SET GLOBAL event_scheduler=1; SHOW VARIABLES LIKE 'event_scheduler'; Variable_name Value event_scheduler ON SET GLOBAL event_scheduler=0; SHOW VARIABLES LIKE 'event_scheduler'; Variable_name Value event_scheduler OFF SET GLOBAL event_scheduler=ON; SHOW VARIABLES LIKE 'event_scheduler'; Variable_name Value event_scheduler ON SET GLOBAL event_scheduler=DISABLED; ERROR 42000: Variable 'event_scheduler' can't be set to the value of 'DISABLED' SHOW VARIABLES LIKE 'event_scheduler'; Variable_name Value event_scheduler ON SET GLOBAL event_scheduler=-1; ERROR 42000: Variable 'event_scheduler' can't be set to the value of '-1' SHOW VARIABLES LIKE 'event_scheduler'; Variable_name Value event_scheduler ON SET GLOBAL event_scheduler=2; ERROR 42000: Variable 'event_scheduler' can't be set to the value of '2' SHOW VARIABLES LIKE 'event_scheduler'; Variable_name Value event_scheduler ON SET GLOBAL event_scheduler=5; ERROR 42000: Variable 'event_scheduler' can't be set to the value of '5' SHOW VARIABLES LIKE 'event_scheduler'; Variable_name Value event_scheduler ON CREATE TABLE table_1(a int); CREATE TABLE table_2(a int); CREATE TABLE table_3(a int); CREATE TABLE table_4(a int); CREATE TABLE T19170(s1 TIMESTAMP); SET GLOBAL event_scheduler=ON; CREATE EVENT two_sec ON SCHEDULE EVERY 2 SECOND DO INSERT INTO table_1 VALUES(1); CREATE EVENT start_n_end ON SCHEDULE EVERY 1 SECOND ENDS NOW() + INTERVAL 6 SECOND ON COMPLETION PRESERVE DO INSERT INTO table_2 VALUES(1); CREATE EVENT only_one_time ON SCHEDULE EVERY 2 SECOND ENDS NOW() + INTERVAL 1 SECOND DO INSERT INTO table_3 VALUES(1); CREATE EVENT two_time ON SCHEDULE EVERY 1 SECOND ENDS NOW() + INTERVAL 1 SECOND ON COMPLETION PRESERVE DO INSERT INTO table_4 VALUES(1); SELECT IF(SUM(a) >= 4, 'OK', 'ERROR') FROM table_1; IF(SUM(a) >= 4, 'OK', 'ERROR') OK SELECT IF(SUM(a) >= 5, 'OK', 'ERROR') FROM table_2; IF(SUM(a) >= 5, 'OK', 'ERROR') OK SELECT IF(SUM(a) > 0, 'OK', 'ERROR') FROM table_3; IF(SUM(a) > 0, 'OK', 'ERROR') OK SELECT IF(SUM(a) > 0, 'OK', 'ERROR') FROM table_4; IF(SUM(a) > 0, 'OK', 'ERROR') OK DROP EVENT two_sec; SELECT IF(TIME_TO_SEC(TIMEDIFF(ENDS,STARTS))=6, 'OK', 'ERROR') FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA=DATABASE() AND EVENT_NAME='start_n_end' AND ENDS IS NOT NULL; IF(TIME_TO_SEC(TIMEDIFF(ENDS,STARTS))=6, 'OK', 'ERROR') OK SELECT IF(LAST_EXECUTED-ENDS < 3, 'OK', 'ERROR') FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA=DATABASE() AND EVENT_NAME='start_n_end' AND ENDS IS NOT NULL; IF(LAST_EXECUTED-ENDS < 3, 'OK', 'ERROR') OK DROP EVENT IF EXISTS events_test.start_n_end; "Already dropped because ended. Therefore an error." DROP EVENT only_one_time; ERROR HY000: Unknown event 'only_one_time' "Should be preserved" SELECT EVENT_NAME, STATUS FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_NAME; EVENT_NAME STATUS two_time DISABLED DROP EVENT two_time; DROP TABLE table_1; DROP TABLE table_2; DROP TABLE table_3; DROP TABLE table_4; DROP DATABASE events_test; SET GLOBAL event_scheduler=OFF;