MySQL 的 計劃任務
阿新 • • 發佈:2019-01-14
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