MySQL 的 计划任务

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

https://www.cnblogs.com/jalja/p/5431567.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章