通过实例讲解mysql怎么实现定时任务

  介绍

小编给大家分享一下通过实例讲解mysql怎么实现定时任务,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

自MySQL5.1.6起,增加了一个非常有特色的功能,事件调度器(事件调度器),可以用做定时执行某些特定任务(例如:删除记录,对数据进行汇总,数据备份等等),来取代原先只能由操作系统的计划任务来执行的工作。

更值得一提的是mysql的事件调度器可以精确到每秒钟执行一个任务,而操作系统的计划任务(如:Linux的cron或Windows下的任务计划)只能精确到每分钟执行一次。对于一些对数据实时性要求比较高的应用(例如:股票,赔率,比分等)就非常适合。

事件调度器有时也可以称为临时触发器(时间触发),因为事件调度器是基于特定时间周期触发来执行某些任务,而触发器(触发器)是基于某个表所产生的事件触发的,区别也就在这里。

<强>一、查看是否开启

祝辞,show  variables  like  & # 39; event_scheduler& # 39;;

<强>二,开启事件调度器

set  global  event_scheduler =,,

这里的设置,当mysql重启后,又会自动关闭。如果需要一直开启,需要在我。ini中配置如下:

(推荐学习视频教程:mysql视频教程)

event_scheduler =,在

<强>三、创建事件语法

CREATE  EVENT  [IF  NOT  EXISTS ], event_name   提醒SCHEDULE 安排   [,提醒,COMPLETION  [], NOT , PRESERVE 】   [,ENABLE  |, DISABLE 】   [,COMMENT  & # 39;注释& # 39;,)   DO  SQL语句;   ,,   schedule : AT  TIMESTAMP  [+, INTERVAL  INTERVAL ], |, EVERY  INTERVAL  [, STARTS  TIMESTAMP ], [, ENDS  TIMESTAMP ]   {interval : quantity  YEAR  |, QUARTER  |, MONTH  |, DAY  |   ,,,,,,,,,,HOUR  |, MINUTE  |, WEEK  | SECOND  |   ,,,,,,,,,,YEAR_MONTH  |, DAY_HOUR  |, DAY_MINUTE  | DAY_SECOND  |   ,,,,,,,,,,HOUR_MINUTE  |, HOUR_SECOND  |, MINUTE_SECOND }

event_name:事件名,最大长度64个字符。

时间表:执行时间。

[> ALTER  EVENT  event_name 禁用;

<强>五、开启事件

ALTER  EVENT  event_name 启用;

<强>六,删除事件

DROP  EVENT  [IF  EXISTS ], event_name;

<强>七、查看所有事件

SHOW 事件;

<强>八,事件例子

我们先创建一个简单的测试表用于测试

CREATE  TABLE “测试”,(   ,“id”int (11), unsigned  NOT  NULL  AUTO_INCREMENT  COMMENT  & # 39; id # 39;   ,“现在”datetime  DEFAULT  NULL  COMMENT  & # 39;时间& # 39;,   ,PRIMARY  KEY  (id)   ),引擎=InnoDB  DEFAULT  CHARSET=use utf8;

事件类型有两种,一种是间隔触发,一种是特定时间触发。

我们每隔一秒向测试表插入一条记录:

DROP  EVENT  IF  EXISTS  event_test;   CREATE  EVENT  event_test   提醒SCHEDULE  EVERY  1, SECOND  STARTS  & # 39; 2017 - 08 - 22, 11:57:00& # 39;, ENDS  & # 39; 2017 - 08 - 22, 12:00:00& # 39;   提醒COMPLETION 保护   启用   COMMENT  & # 39;每隔一秒向测试表插入记录& # 39;   DO  INSERT  INTO  test 值(空,,现在());

以上是“通过实例讲解mysql怎么实现定时任务”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

通过实例讲解mysql怎么实现定时任务