mysql
一 数据库权限
1、检查数据库事件是否开启,
SELECT @@event_scheduler;
SHOW VARIABLES LIKE 'event_scheduler';
show variables like '%sche%';
2、开启事件
SET GLOBAL event_scheduler = ON;
SET GLOBAL event_scheduler = 1;
SET @@global.event_scheduler = ON;
SET @@global.event_scheduler = 1;
3、关闭事件
SET GLOBAL event_scheduler = OFF;
SET GLOBAL event_scheduler = 0;
SET @@global.event_scheduler = OFF;
SET @@global.event_scheduler = 0;
二 定时任务
1、查看定时任务
SELECT * FROM information_schema.events;
2、关闭定时任务
ALTER EVENT 事件名 DISABLE;
3、开启定时任务
ALTER EVENT 事件名 ENABLE;
4、删除计划任务
DROP event 事件名;
如果任务存在则删除计划任务
DROP EVENT IF EXISTS 事件名;
创建任务
每x天凌晨y点执行
CREATE EVENT IF NOT EXISTS 事件名
ON SCHEDULE EVERY x DAY STARTS DATE_ADD(DATE_ADD(CURDATE(), INTERVAL 1 DAY),INTERVAL y HOUR)
ON COMPLETION NOT PRESERVE
DO 你要执行的sql语句或过程名或函数名
默认开始时间是创建时间 这句 DATE_ADD(CURDATE(), INTERVAL 1 DAY)确保从第二天00:00开始计算周期
参考:
https://blog.csdn.net/ziwoods/article/details/80569063
https://blog.csdn.net/u010003835/article/details/50563079 这个比较详细
https://blog.csdn.net/zhaowj0507/article/details/53468681 Navicat