DELIMITER $$

删除已有任务事件

DROP EVENT IF EXISTS del_message;

创建事件

CREATE EVENT del_message

表示创建时间定时周期,以及开始时间,该处表示从明天2点从开始,7天执行一次该任务

ON SCHEDULE EVERY 7 day STARTS date_add(date( ADDDATE(curdate(),1)),interval 2 hour)
ON COMPLETION PRESERVE
DO BEGIN

创建时间与当前时间相差7天,并删除7天之前的数据

DELETE FROM message WHERE CREATE_TIME< DATE_SUB(NOW(),INTERVAL 7 DAY);
END$$
DELIMITER;

开启事件调度器

确认是否开启,ON表示已开启

SHOW VARIABLES LIKE 'event_scheduler';

查询事件

show events

开启事件

alter event del_message;

删除事件

drop event del_message

更多推荐