您的位置:首页 > 数据库 > MySQL

MySQL定时任务

2016-12-17 21:58 225 查看
今天要做一个定时任务更新数据库MySQL,正想着用什么做呢?忽然想到MySQL是不是有定时任务,果不其然真有。

MySQL从5.1.6版本起,增加了一个时间调度器(Event Scheduler),可以做定时执行操作,精确到秒来执行。

使用这个功能必须确保开启event_scheduler。

开启命令:set GLOBAL event_scheduler = 1 或 set GLOBAL event_scheduler = ON

在配置文件也可以配置,在配置文件my.cnf 加入 event_scheduler = 1

--查看定时任务是否开启 下面两个命令都可以

SHOW VARIABLES LIKE 'event_scheduler';



SELECT @@event_scheduler;



--开启定时任务

SET GLOBAL event_scheduler = ON;

查看是否开启 SHOW VARIABLES LIKE 'event_scheduler';



--创建定时任务

官方例子:



CREATE EVENT myevent

--一个小时执行一次

ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 HOUR

DO

UPDATE myschema.mytable SET mycol = mycol + 1;

The previous statement creates an event named myevent. This event executes once—one hour following its creation—by running an SQL statement that increments the value of the myschema.mytable table's mycol column by 1.

我的例子:

CREATE EVENT z_paihang

--十秒执行一次

ON SCHEDULE EVERY 10 SECOND

DO

begin

--写你的SQL任务

end

--修改定时任务

ALTER EVENT z_paihang

ON SCHEDULE EVERY 600 SECOND

DO

begin

--写你的SQL任务

end



本文结束
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql