mysql的定时执行任务

本文围绕MySQL的定时执行任务展开,介绍了查看事件状态的方法,阐述了在MySQL Workbench工具数据库中创建存储过程的步骤,说明了创建定时事件的代码及含义,列举了常见的定时时间函数,如EVERY、AT、STARTS ENDS等,还给出了开启和关闭时间的代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mysql的定时执行任务

一、查看事件的状态

代码如下

show variables like '%event_sche%';-- 查询mysql的事件的状态,默认是OFF

启动事件

set global event_scheduler=1;-- 设置事件为启动状态,数据库重启后失效

二、创建存储过程

在mysql workbench工具的数据库中创建存储过程的方法是选择“stored procedures”,创建一个存储过程,代码如下
代码如下

CREATE PROCEDURE `teacher_test` ()
BEGIN
insert into teacher(tid,tname,tsex) values(1,'张三','男');
END

三、创建定时事件

代码如下

create event second_event
on schedule every 5 second
on completion preserve disable
do call teacher_test();

上述代码第一行中second_event表示事件的名称
第二行表示每隔5秒执行一次
第三行表示创建后不立即执行
第四行表示调用存储过程

四、常见的定时时间函数

周期执行–关键字 EVERY
单位有:second,minute,hour,day,week(周),quarter(季度),month,year
如:

on schedule every 1 second //每秒执行1次
on schedule every 2 minute //每两分钟执行1次
on schedule every 3 day //每3天执行1次

在具体某个时间执行–关键字 AT
如:

on schedule at current_timestamp()+interval 5 day //5天后执行
on schedule at current_timestamp()+interval 10 minute //10分钟后执行
on schedule at '2016-10-01 21:50:00' //在2016年10月1日,晚上9点50执行

在某个时间段执行–关键字STARTS ENDS
如:

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

五、开启和关闭时间

代码如下:

alter event second_event on completion preserve enable;-- 开启定时任务
alter event second_event on completion preserve disable;-- 关闭定时任务
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值