大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
MySQL中怎么实现定时执行,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
创新互联建站主要从事网站设计制作、网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务富川,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220
5.1版本以后,MYSQL支持定时执行(event)的功能,就跟linux的crontab差不多。
先查看一下你的MSYQL版本,查询版本信息的SQL语句:
select VERSION()
确定版本支持之后,再查看一下event是否开启:
show variables like ’%sche%’;
如果未开启,那如何开启呢?
show VARIABLES LIKE ’%sche%’;
set global event_scheduler =1;
show VARIABLES LIKE ’%sche%’;
一般定时执行有2种:
1、从具体一个时间点开始,每隔一段时间执行一次;
从现在开始,每30秒执行一次
create event if not exists e_test
on schedule every 30 second starts now()
on completion preserve
do
INSERT into sdb_yoyi (yoyiscid,orderid) VALUES(2,3)
2、从具体一个时间点开始,在当日的某个时间点进行执行;
每个月的一号凌晨1点执行
create event if not exists e_test2
on schedule every 1 month starts DATE_ADD(DATE_ADD(DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY), INTERVAL 1 MONTH),INTERVAL 1 HOUR)
on completion preserve
do
INSERT into sdb_yoyi (yoyiscid,orderid) VALUES(2,3)
也可以对事件任务进行关闭:
alter event e_test ON
COMPLETION PRESERVE DISABLE;
对已经关闭的事件任务进行开启:
alter event e_test ON
COMPLETION PRESERVE ENABLE;
关于mysql中怎么实现定时执行问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。