1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > MySQL的定时任务EVENT事件使用说明

MySQL的定时任务EVENT事件使用说明

时间:2020-03-13 15:08:20

相关推荐

MySQL的定时任务EVENT事件使用说明

一、查看定时策略是否开启

show variables like '%event_scheduler%';

* on这里是启用的

查看进程:会看到一个用户为event_scheduler,执行状态为Waiting on empty queue的进程

show PROCESSLIST;

开启定时策略:

set global event_scheduler = 1;

关闭定时策略:

set global event_scheduler = 0;

在f配置文件中开启事件(永久开启,设置后需要重启MySQL才会生效)

配置文件的[mysqld]部分加上event_scheduler=ON

二、创建定时任务

-- 创建定时任务create EVENT sync_lastday_attendanceON SCHEDULEEVERY '1' DAY STARTS '-09-19 05:00:00'DO call sync_lastday_attendance()

解释:

1、create event sync_lastday_attendance:是创建名为sync_lastday_attendance的事件

2、EVERY '1' DAY 创建周期定时的规则,意思是每天执行一次

3、STARTS '-09-19 05:00:00'表示在具体某个时间执行,是-09-19凌晨5点整开始执行

3、可选 on completion preserve disable是表示创建后并不开始生效。

4、do call sync_lastday_attendance()是该event(事件)的操作内容,这里是调用名为sync_lastday_attendance()的存储过程

三、定时任务操作

查看所有定时任务

SELECT event_name,event_definition,interval_value,interval_field,status FROM information_schema.EVENTS;

查看指定定时任务创建详细

show create EVENT sync_lastday_attendance;

修改任务

-- 创建定时任务 8点执行 调用test()存储过程ALTER EVENT sync_lastday_attendanceON SCHEDULEEVERY '1' DAY STARTS '-09-19 08:00:00'DO call test()

开启定时任务

alter event sync_lastday_attendance on completion preserve enable;//开启定时任务

关闭定时任务

alter event sync_lastday_attendance on completion preserve disable;//关闭定时任务

删除定时任务

drop event sync_lastday_attendance; //删除定时任务

四、定时规则

1、周期执行(EVERY)

参数单位有:second、minute、hour、day、week(周)、quarter(季度)、month、year

on schedule every 1 week //每周执行1次on schedule every 1 day //每天执行1次

2、在具体某个时间执行(AT)

on schedule at current_timestamp()+interval 5 day //5天后执行on schedule at '-09-19 05:00:00' //在9月19日,5点整执行

3、在某个时间段执行(STARTS ENDS)

on schedule every 1 day starts current_timestamp()+interval 3 day ends current_timestamp()+interval 1 month //3天后开始每天都执行一次到下个月底结束on schedule every 1 day ends current_timestamp()+interval 3 day //从现在起每天执行,执行3天

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。