mysql定时任务开启方法详解

发布时间:2019-11-13编辑:脚本学堂
mysql定时任务的开启方法,事件是由一个特定的线程来管理的,也就是所谓的"事件调度器",不了解的朋友参考下。

mysql事件调度器event scheduler是在mysql 5.1才开始引入事件调度器是在 mysql 5.1 中新增的另一个特色功能,可以作为定时任务调度器,取代部分原先只能用操作系统任务调度器才能完成的定时功能。事件调度器是定时触发执行的,在这个角度上也可以称作是"临时的触发器"。

触发器只是针对某个表产生的事件执行一些语句,而事件调度器则是在某一个(间隔)时间执行一些语句。

事件是由一个特定的线程来管理的,也就是所谓的"事件调度器"。笔者使用的 mysql 的版本是mysql 5.6.22。

如何开启mysql定时任务?

1、通过 show variables like 'event_scheduler' 命令,可以查看 event是否开启,或 select @@event_scheduler 
如果未开启,可以通过命令开启:
 

set global event_scheduler =1;

2、语法:
 

CREATE EVENT [IF NOT EXISTS] event_name
ON SCHEDULE schedule
ON COMPLETION [NOT] PRESERVE]

[ENABLE | DISABLE] [COMMENT 'comment']  DO sql_statement / CALL PROCEDURE;

schedule:
 AT TIMESTAMP [+ INTERVAL INTERVAL]
 | EVERY INTERVAL [STARTS TIMESTAMP] [ENDS TIMESTAMP]
  
INTERVAL:
 quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |
 WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |
DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}