今天小编给大家分享一下MySQL创建定时任务的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

常用的一定要写在前面

#从2019-10-11开始,每天的00:30:00执行定时任务ONSCHEDULEEVERY1DAYSTARTS'2019-10-1100:30:00'#每天的凌晨1点执行定时任务ONSCHEDULEEVERY1DAYSTARTSDATE_ADD(DATE_ADD(CURDATE(),INTERVAL1DAY),INTERVAL1HOUR)#特定的日期特定的时间点执行定时任务ONSCHEDULEat'2019-10-1019:14:10'#每五分钟执行一次定时任务ONSCHEDULEEVERY5MINUTESTARTSCURDATE()#每小时执行一次定时任务ONSCHEDULEEVERY1HOURSTARTSCURDATE()

下面开始进入正文!!!

就像增删改查需要权限一样,建立定时任务也需要权限!

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

showvariableslike'%event_sche%';

如果显示为

ON:表示已开启,下面这些就不用做了,直接进入【二、创建定时任务】

OFF:表示没有开启!

setglobalevent_scheduler=1;--开启定时

执行完这一句,如果显示access denied;

表示你没有开启定时任务的权限,联系运维给你开通权限,或者让他执行一下上面这个语句。

执行完之后再执行一下show variables like '%event_sche%';确保已开启。

二、创建定时任务

以下语句也是在新建查询窗口运行

方法1:直接创建定时任务事件

DELIMITER//CREATEEVENTtest_eventonscheduleat'2019-10-1019:27:10'#规定在这个时间点执行下面的语句DOBEGINDROPTABLEIFEXISTStest_ee;/************************************************************************/CREATEtabletest_eeASSELECTNOW();END;//

方法2:先创建存储过程,再定义执行周期

--创建存储过程testCREATEPROCEDUREtest_d2()BEGINDROPTABLEIFEXISTStest_ddd;/*************************************/CREATEtabletest_dddASSELECTNOW();END;CREATEEVENTIFNOTEXISTStemp_eventonscheduleat'2019-10-1019:14:10'ONCOMPLETIONPRESERVE--ENABLEdocalltest_d2();

以上就是“MySQL创建定时任务的方法是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。