mysql 定时任务
查询 定时任务 的状态
SHOW VARIABLES LIKE 'event_scheduler';
开启定时任务 ( 重启mysql后会关闭,可在my.ini 配置文件mysqld下增加 event_scheduler=on )
SET GLOBAL event_scheduler = ON;

关闭定时任务
SET GLOBAL event_scheduler = OFF;
查看所有定时任务
select * from information_schema.events;
开启某一个定时任务
alter event 定时任务名称 enable;
关闭某一个定时任务
alter event 定时任务名称 disable;
在 Navicat 中创建定时任务
点击事件 -> 新建 -> 在【定义】中填写 Sql 语句或 Call 存储过程 (可使用 begin end 复合语句)

在【计划】中根据需求进行设置后, 点击【保存】即可

具体的执行时间可以是 TIMESTAMP 和DATETIME 数据类型,需要大于当前时间。
使用 Sql 语句创建定时任务
执行一次
CREATE EVENT [定时任务名称] ON SCHEDULE at [具体执行时间] /*[该条语句可以没有] ON COMPLETION [NOT] PRESERVE PRESERVE作用: at单次执行完毕后,不删除这个定时任务,默认为not preserve 结束后删除。 */ /*[该条语句可以没有] ENABLE | DISABLE 初始化定时任务是否开启,默认为ENABLE开启。 */ DO begin 执行语句 end;
多次执行
CREATE EVENT 定时任务名称 ON SCHEDULE every [具体执行时间] [执行周期] [周期单位] STARTS [具体开始时间] ENDS [具体结束时间] /* ON COMPLETION NOT PRESERVE [该条语句可以没有] PRESERVE作用: every多次执行至 ENDS[具体结束时间]后),不删除这个定时任务,默认为not preserve 结束后删除。*/ /* ENABLE | DISABLE [该条语句可以没有]*/ DO begin 执行语句 end;
修改定时任务
ALTER EVENT [定时任务名称]
DO [sql语句 / call 存储过程] ;
删除定时任务
drop event if exists [定时任务名称] ;
浙公网安备 33010602011771号