show variables like '%event_sche%';
开启定时策略:
set global event_scheduler = 1;
create procedure test_procedure ()
begin
insert into user(name,create_date) values('hello',now());
end;
delimiter关键字的使用:在mysql客户端中分隔符默认是分号(;)。如果一次输入的语句较多,并且语句中间有分号,这时需要新指定一个特殊的分隔符。可以使用“delimiter //”,这样改变了分隔符。其实就是告诉mysql解释器,该段命令是否已经结束了,mysql是否可以执行了。
create event run_event
on schedule every 1 minute
on completion preserve disable
do call test_procedure ();
1、create event day_event:是创建名为run_event的事件 2、创建周期定时的规则,意思是每分钟执行一次 3、on completion preserve disable是表示创建后并不开始生效。 4、do call test_procedure ()是该event(事件)的操作内容
SELECT event_name,event_definition,interval_value,interval_field,status
FROM information_schema.EVENTS;
alter event run_event on completion preserve enable;//开启定时任务
alter event run_event on completion preserve disable;//关闭定时任务
单位有:second、minute、hour、day、week(周)、quarter(季度)、month、year
on schedule every 1 week //每周执行1次
on schedule at current_timestamp()+interval 5 day //5天后执行
on schedule at '2019-01-01 00:00:00' //在2019年1月1日,0点整执行
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天