原标题:卓象程序员:Mysql数据库事件使用与示例

事件简介

事件(event)是MySQL在相应的时刻调用的过程式数据库对象。一个事件可调用一次,也可周期性的启动,它由一个特定的线程来管理的,也就是所谓的“事件调度器”。

事件和触发器类似,都是在某些事情发生的时候启动。当数据库上启动一条语句的时候,触发器就启动了,而事件是根据调度事件来启动的。由于他们彼此相似,所以事件也称为临时性触发器。

事件取代了原先只能由操作系统的计划任务来执行的工作,而且MySQL的事件调度器可以精确到每秒钟执行一个任务,而操作系统的计划任务(如:Linux下的CRON或Windows下的任务计划)只能精确到每分钟执行一次。

事件的优缺点

优点: 一些对数据定时性操作不再依赖外部程序,而直接使用数据库本身提供的功能。

可以实现每秒钟执行一个任务,这在一些对实时性要求较高的环境下就非常实用了。

缺点:定时触发,不可以调用。

创建事件

一条create event语句创建一个事件。每个事件由两个主要部分组成,第一部分是事件调度(event schedule),表示事件何时启动以及按什么频率启动,第二部分是事件动作(event action ),这是事件启动时执行的代码,事件的动作包含一条SQL语句,它可能是一个简单的insert或者update语句,也可以让一个存储过程或者benin...end语句块,这两种情况允许我们执行多条SQL。

一个事件可以是活动(打开)的或停止(关闭)的,活动意味着事件调度器检查事件动作是否必须调用,停止意味着事件的声明存储在目录中,但调度器不会检查它是否应该调用。在一个事件创建之后,它立即变为活动的,一个活动的事件可以执行一次或者多次

开启事件

在使用事件这个功能,首先要保证你的mysql的版本是5.1以上,然后还要查看你的mysql服务器上的事件是否开启。

查看事件是否开启,使用如下命令查看:

SHOW VARIABLES LIKE 'event_scheduler';

通过动态参数修改 SET GLOBAL event_scheduler = ON;

更改完这个参数就立刻生效了

注意:还是要在my.ini 中添加event_scheduler=ON。因为如果没有添加的话,mysql重启事件又会回到原来的状态了。

立即启动事件

create event event_now

on schedule

at now()

do 事件执行语句;

每分钟启动事件

create event test.event_minute

on schedule

every 1 minute

do 事件执行语句;

每天一点钟执行

CREATE EVENT `demo`.`Untitled`

ON SCHEDULE

EVERY '1' DAY + INTERVAL '1' HOUR

DO 事件执行语句;

一段时间内重复执行

create event monitor_event

on schedule every 1 minute

starts ‘2016-12-12 9:00:00’ ends ‘2016-12-12 11:00:00’

do 事件执行语句 ;

责任编辑:

mysql事件示例_卓象程序员:Mysql数据库事件使用与示例相关推荐

  1. thinkphp5 事务回滚_卓象程序员:ThinkPHP5实现事务功能

    原标题:卓象程序员:ThinkPHP5实现事务功能 一.什么是事务? 事务就是一段sql语句的批处理,但是这个批处理是一个atom(原子) ,不可分割,要么都执行,要么回滚(rollback)都不执行 ...

  2. 程序员删数据库事件引发的个人思考

    最近周围的人都在讨论程序员删数据库这件事情,业内的人在讨论怎么才能锁住数据库并删掉.外行的人在谴责这个程序员的职业道德.中午朋友给我聊起这件事情的时候,我感觉没有那么简单,只是给朋友说,事情估计没有网 ...

  3. 以太坊代币事件监控_以太坊程序员的常见误解

    最近,我偶然读到了一篇题为<程序员关于时区的误解>的文章,让我爆笑不已.这篇文章让我想到了程序员在其它方面的误解,如人名和时间,于是我开始寻找有没有关于以太坊的.奈何寻觅无果,我只得尽自己 ...

  4. php mysql笔试题_初级PHP程序员笔试题

    初级PHP程序员笔试题 答题时间:60 – 90分钟 一.基础及程序题(建议使用你擅长的语言:C/C++.PHP.Java) 1.写一个排序算法,可以是冒泡排序或者是快速排序,假设待排序对象是一个维数 ...

  5. mysql交互式查询_客户机程序5―MYSQL交互式查询程序[图]_MySQL

    6.7 客户机程序5―交互式查询程序 让我们把迄今为止研究的诸多内容整理一下,编写一个简单的交互式客户机程序.它的功能包括可以进入查询,用通用目标查询处理程序process_query 执行查询,并用 ...

  6. 当了十年 IT 程序员,我转型做自动驾驶开发的这五年”_《新程序员》编辑部的博客-CSDN博客

    "当了十年 IT 程序员,我转型做自动驾驶开发的这五年"_<新程序员>编辑部的博客-CSDN博客

  7. 程序员坠楼事件:人到中年,不得不怂!

    中兴程序员坠楼事件刷屏了当时的整个互联网圈. 被离职的程序员欧某新,从中兴通讯的大楼顶上一跃而下,结束了42岁的生命. 留下四位老人和一对年幼的儿女,令人扼腕叹息.  • 认怂,是中年成熟的标志 •  ...

  8. computehash在php怎么实现,卓象程序员:PHP实现基础区块链

    原标题:卓象程序员:PHP实现基础区块链 一.引言 什么是区块链?官方的解释是:区块链是一个分布式记账系统,是藉用密码学串接并保护其内容的串连交易记录(又称区块).每一个区块包含了前一个区块的加密散列 ...

  9. php xdebug remote_host 多个,卓象程序员:PHPStudy PHPStorm XDebug调试

    原标题:卓象程序员:PHPStudy PHPStorm XDebug调试 1.phpStudy配置 phpStudy集成XDebug扩展,所以不用下载XDebug phpStudy -> 其它选 ...

最新文章

  1. 谷歌新深度学习系统可以促进放射科医生的发展
  2. vue结合php增删改查实例,用vue.js写一个简单的增删改查
  3. 上周新闻回顾:Vista麻烦不断 Office波澜再起(2.26-3.4)
  4. C#字符串二进制互换
  5. zabbix 邮件报警
  6. matlab计算海洋浮力频率_帝国理工学院海洋、海岸与建筑环境工程流体力学理学硕士研究生offer一枚...
  7. Spring Boot 2.x基础教程:配置文件详解
  8. 爱奇艺怎么看不了电视剧和视频
  9. Prototype(原型原型链)
  10. extjs chart无法在panel中显示_HighChart教程:Swift中的Highcharts iOS库
  11. VS下如何配置才能使用 cl 命令行方式编译 C/C++ 程序
  12. js 面向对象 继承
  13. JAVA程序性能优化研究 - 循环内对象性能优化内容
  14. python二进制显示图片_python 读取二进制 显示图片案例
  15. vtp服务器作用,vtp作用是什么?思科交换机vtp配置教程
  16. 免费文献下载地址汇总
  17. 海底电缆变为“地震仪”
  18. office-word使用技巧——查找替换
  19. 【前端知识点】promise简书-30分钟带你搞懂promise面试必备
  20. EDI Capability 表示什么?

热门文章

  1. 一个java面试题:一个农夫养了一头牛,三年后,这头牛每年会生出一头牛,生出来的牛三年后又可以每年生出一头牛,不考虑牛的性别和生死,问农夫10年后有多少头牛?
  2. 国产数据库40年演变,这3个坎一直跨不过去
  3. 3D计算机图形学零起点全攻略
  4. 常用搜索引擎 (转)
  5. SpringBoot使用tkmapper
  6. 经典题目-如何测试一个一次性纸杯
  7. 计算机主机接电视机,液晶电视机怎样才能连接电脑主机?
  8. idea导入maven项目maven不显示maven Dependencies
  9. 优雅的99乘法表以及format使用
  10. matlab 包含nan的行,matlab中去除含有NaN的行或者列