MySql的事件调度器

从My Sql 5.1.6起,增加了一个非常有特色的功能 事件调度器(Event Scheduler),可以用做定时执行某些特定任务(例如:删除记录、对数据进行汇总、数据备份等等),来取代原先只能由操作系统的计划任务来执行的工作。更值得一提的是MySQL的事件调度器可以精确到每秒钟执行一个任务,而操作系统的计划任务(如:Linux的cron或Windows下的任务计划)只能精确到每分钟执行一次。对于一些对数据实时性要求比较高的应用(例如:股票、赔率、比分等)就非常适合。

事件调度器有时也可以称为临时触发器(temporal triggers),因为事件调度器是基于时间特定周期来触发来执行任务的,而触发器(Triggers)是基于某个表所产生的事件触发的,区别也就在这里。
1、 在使用这个功能之前必须确保event_scheduler已经开启,可执行
在这里插入图片描述

注:将事件计划关闭:
在这里插入图片描述

2.需要查看当前是否已经开启事件调度器,可以执行如下SQL:
①SHOW VARIABLES LIKE ‘event_scheduler’;
②SELECT @@event_scheduler;
③SHOW PROCESSLIST;

  1. 在这里插入图片描述

一、 创建时间的语法:
在这里插入图片描述

注:event_name:事件名
ON SCHEDULE schedule 是应时间的语法
[ON COMPLETION [NOT] PRESERVE] 完成后是否保存该事件,默认是NOT PRESERVE(不保存)
[ENABLE | DISABLE] 可以设置该事件创建后状态是否开启或关闭,默认为ENABLE(启动)。
[COMMENT ‘comment’] 可以给该事件加上注释
DO sql_statement; 要执行的事件

举个例子:每天定时清空test表(只执行一次,任务完成后就终止该事件):
在这里插入图片描述

在这里,我们创建一个叫做e_test6的事件,每天执行一次。执行完成后不保存,执行的事件是 清除 aaa;、
修改语法:
在这里插入图片描述
在这里插入图片描述

删除事件:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值