MySQL定期执行任务相关问题

在sqlyog某数据库下的事件里新建事件,并写入一下代码:

DELIMITER $$

ALTER DEFINER=`root`@`%` EVENT `0` ON SCHEDULE EVERY 24 HOUR STARTS '2018-04-18 00:00:00' ENDS '2028-12-31 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
	    //do something
	END$$

DELIMITER ;

具体执行内容根据具体需要来写,最后的ON COMPLETION NOT PRESERVE表示事件到期后不再保留。

通过以下代码查询当前MySQL是否允许执行事件:

SHOW VARIABLES LIKE 'event_scheduler';

 查询结果如图所示时可以执行:

若该值为OFF,则执行以下代码开启:

SET GLOBAL event_scheduler = 1;

注意:重启MySQL将会使该值变为OFF

原文地址:https://www.cnblogs.com/dramstadt/p/9073644.html