当前位置:首页 > 日记 > 正文

MySQL中事件的使用详解

MySQL中事件的使用详解
1。基本概念
的MySQL5.1版本开始引入了事件的概念,事件是一次触发不同的事件触发和事件触发,类似于Linux crontab计划任务时间触发相关的SQL语句或存储过程被触发,在一个特定的时间点由一个单独的或调用存储过程使用。

两。应用范围
对于每隔一次有固定需求的操作,如创建表、删除数据和其他操作,可以使用事件来处理它。

例如,使用事件自动创建需要在下个月1日上午1点使用的三个表。

三。使用权限
当仅使用事件调用SQL语句时,需要查看并创建用户的事件特权。当你调用SQL语句,你需要用户的权限来执行SQL。事件的权限设置保存在mysql.user表event_priv领域和mysql.db表。

当事件和程序使用的时间,查看和创建一个存储过程需要用户创建常规许可使用时执行访问调用存储过程执行的存储过程调用的用户特定需求的SQL语句,在SQL的执行权限。
查看事件命令如下:

(1)查询mysql.event表;

(2)通过显示事件命令;

(3)通过显示完整事件命令;

(4)通过查询information_schema.events表

(5)显示创建事件。

总之,建议使用root用户创建和维护事件的低频率。

四。基本语法

4.1打开定时器
使工作事件,MySQL的全球不断event_scheduler必须在1。
-检查计时器是否打开。
复制代码代码如下所示:
显示变量like'event_scheduler;

-打开计时器0:关闭1:打开
复制代码代码如下所示:
设置全局event_scheduler = 1;

当您将事件计划设置为0或关闭时,即关闭事件计划过程时不会出现新的事件执行,但现有的运行事件将完成。

我们的网络环境中,当使用事件,注意在主库打开定时器,从图书馆的事件触发计时器,所有的操作都会记录binlog主人/奴隶,从图书馆的定时器都有可能引起。切换主库后,记得在新的主图书馆开放时间。
请特别注意它!

4.2创建事件
创建事件的语法如下所示:
创建事件
{不存在} --------------------------------------------- * 1
event_name ----------------------------------------------------- *标注2

在日程------------------------------------ * 3
{在} } {没有完成保存----------------- * 4
{使禁用} | ---------------------------------------- * 5
{ comment'comment} -------------------------------------- *标注6
做sql_statement ----------------------------------------------- *标注7

解释uff1a

注释1:{如果不存在}

如果不存在,则仅在同名事件不存在时创建它,否则将忽略它。建议使用它来确保事件创建的成功。

注释2:event_name

名称的最大长度为64个字节。名称必须在当前dateabase唯一的一个,和相同的数据库不能有相同名称的事件。

使用事件的共同工作是创建表、插入数据、删除数据、清除表和删除表。

为了避免被命名规范造成的不便,最好让事件的名称来描述整个事件的能力。建议如下:动作名称的命名规则_(进/ from_)表名_time,例如:
1。每月创建(清除/删除)粉丝表:
创建(截断/降)_table_fans_month;
2。每天从风扇表中插入(删除)数据:
插入(删除)_into(从)_fans_day;
注释3:按计划

准时制计划有两种建立计划任务的方法:

1。在时间戳上,用于完成单个计划任务。

2。每次(单位)时间单位{开始时间戳}结束时间}用于完成重复计划的任务。

在这两个计划任务,时间戳可以是一个任意的时间戳和datetime数据类型,和时间戳必须大于当前时间。

在重复计划任务中,时间单位可以是任意整数而不是null,时间单位是关键字:年、月、日、小时、分钟或秒。

提示:其他时间单位也是合法的,如季、周、year_month,day_hour,day_minute,day_second,hour_minute,hour_second,minute_second,这是不推荐使用这些非标准时间单位。

注释4:{完成时{ { } } } }

在完成说当事件不会再发生,当单任务计划后执行完毕或当重复执行结束stage.preserve是事件的执行完成后的角色不会脱落,建议利用此参数,以检查事件的具体信息。

马克:{ 5 }使|禁用
启用和禁用参数表示设置事件的状态。启用指示系统将执行事件。禁用指示系统不执行事件。

以下命令可以关闭或打开以下命令:

改变事件event_name启用/禁用
注释6:{ comment'comment}

注释中出现的元数据,这是存储在一个最大长度为64个字节的information_schema表评论专栏。'comment'indicates,注释内容放在单引号,并建议使用注释来表达更全面的信息。

注释7:做sql_statement

做sql_statement字段代表的SQL语句或存储过程的事件需要执行。这里的SQL语句可以是复合语句,例如:
开始
创建表test1; / /创建表(测试)
删除表test2; / /删除表
电话(proc_test1); / /调用存储过程
结束

使用开始和结束标识符,复合SQL语句在执行顺序中放置在它们之间。当然,SQL语句是有限的。对它的限制与函数函数中的SQL语句和trigger Trigger相同。如果不能在函数函数和trigger Trigger中使用一些SQL,那么它也不能在事件中使用:

锁定表
打开表
创建事件
改变事件
加载数据

4.3执行逻辑
对于(已建立的事件,已经创建的每个事件)
如果(事件的状态不禁用)
和(当前时间是在结束时间之前)
和(开始后的当前时间)
和(最后一次执行后的时间)
(未执行)
然后:
构建新线程
将事件传递给新线程的SQL语句
(线程在执行后自动关闭)

4.4修改事件
使用修改事件来修改事件,具体的语法如下所示,类似于创建事件的语法:
改变事件
event_name

在进度计划
{重命名为new_event_name }
{完成时{ { } } }
{ } |启用禁用
{ comment'comment}
做sql_statement
4.5删除事件
事件使用下拉事件语句删除已创建的事件,其语法如下所示:

删除事件
{如果存在}
event_name
但是,当事件正在运行时,删除事件不会导致事件停止,事件将一直执行到事件结束。使用下拉式用户和删除数据库语句将同时删除包含它们的事件。

五。常见的例子
自动调用e_test()存储过程的每一秒
复制代码代码如下所示:
如果不存在e_test创建事件
每1秒准时
完成后保存
请e_test();

统计()存储过程每个月上午1时执行。
复制代码代码如下所示:
创建事件不存在
计划每1个月就开始date_add(date_add(date_sub(CURDATE(),间隔一天(CURDATE()),1)
完成保存启用

开始
调用统计();
结束

相关文章

mysql官方手册学习笔记2mysql模糊

mysql官方手册学习笔记2mysql模糊

模糊,正则表达式,查询,学习笔记,手册,SQL模式匹配允许你使用_匹配任何单个字符,匹配任意数量的字符%(包括零字符)。在MySQL,SQL默认是忽略案例和案例。下面给出了一些例子。当你注意到SQL模式的使用,不能使用=或!=,您应该使用类似或不喜欢比较运算…

快速和方便地访问win7系统资源管理

快速和方便地访问win7系统资源管理

系统资源,管理器,快速,电脑软件,点评:我们如何快速快速地进入资源管理器访问win7系统的最快方法是下载的资源管理器,然后按下键盘上的Shift键,然后双击我的电脑,感兴趣的朋友可以了解它。 win7系统不提供直接访问的资源管理器,但功能强大的人力…

你一定不知道Win8技巧

你一定不知道Win8技巧

你一定,技巧,电脑软件,点评:Win8.1已经上市一段时间,和各种应用技术进行挖掘。但对于这样一个广泛的操作系统,偶尔带一个或两个不为人知的秘密这绝对不是新的。 Win8.1也已经上市一段时间,和各种应用技术已被挖掘出来。但对于这样一个广泛的操…

备份应用程序列表和备份完整应用程

备份应用程序列表和备份完整应用程

应用程序,备份,列表,文件,区别,在使用豌豆荚移动助手备份手机系统的过程中,您将选择备份方式,一种是备份应用程序列表,另一种是备份完整应用程序文件。那么这两种方式有什么区别呢 豌豆荚手机助手是默认备份应用程序列表;这样的备份应用程序是…

Win8.1不请玩家,而Win7仍然是最喜欢

Win8.1不请玩家,而Win7仍然是最喜欢

最喜欢,仍然是,不请,玩家,电脑软件,点评:游戏玩家将选择什么样的系统 在过去的4年和1年的Win7或Win8发布后,最新的Win8.1已经迎来了今年,但什么样的系统将为广大游戏爱好者吗蒸汽阀门从国外给我们提供了详细的参考数据:64位win7系统仍然是玩家…

wdsvc是wdsvc.exe-过程

wdsvc是wdsvc.exe-过程

过程,电脑软件,wdsvc,exe,综述:简要介绍了wdsvc.exe - wdsvc过程 进程文件:wdsvc或wdsvc.exe 进程名称:dantz回顾部分 过程类别:安全风险的过程 英文描述: wdsvc.exe是一个过程,属于dantz回顾备份中的应用 中文参考: 对不起,暂时没有中文参考资料…

如何实现WPS文本中的单词数

如何实现WPS文本中的单词数

词数,如何实现,电脑软件,文本中,WPS,点击WPSldquo tab,在回顾;选项组中的队伍;二是上,字数点击;;字数这个按钮会弹出一个;,无论是页面、统计;文字,字符,段落清晰。它看起来像在Word2010一样!…

单词不能正常启动,你会怎么做

单词不能正常启动,你会怎么做

启动,你会,怎么做,不能正常,单词,问题是:我的话就是XP正版版,今天突然不能正常启动,只能用安全模式;(机器重启了很多次,不管事,不一样的病毒,我的机器的病毒库是最新的诺顿,以前基本上没有问题的用词)。帮助菜单中的检测并修复;;报告代码1042错误无法打…

寻找指定日期数据代码的准时变格式

寻找指定日期数据代码的准时变格式

数据,日期,准时,代码,格式,复制代码代码如下所示: 选择*从桌子上date_format(from_unixtime(创造时间),% y %M - %d)= '2014-01-02 from_unixtime使用语法 from_unixtime(unix_timestamp,格式) from_unixtime(unix_timestamp),from_unixtime(unix_tim…

让Vista资源管理器在XP中显示菜单

让Vista资源管理器在XP中显示菜单

显示,菜单栏,资源管理器,电脑软件,Vista,点评:浏览器在Windows Vista中功能比较强大,不仅搜索和高度集成,而且还提供了许多新的人力资源管理功能,有一种感觉是菜单不习惯消失,所以当你需要做一些操作时往往处于亏损状态。 Windows Vista中的资源…

如何使用手机锁功能

如何使用手机锁功能

如何使用,功能,电脑软件,移动锁功能的操作方法的细节如下: 算子 锁定指令 解锁指令 访问数 区域范围 移动 你的QQ号 js你的QQ号码 一兆零六百五十七亿五千五百八十万二千三百八十一 整个国家 电信CDMA 一百零六亿九千零七十万零…

手动Win8.1Update系统镜像备份/恢

手动Win8.1Update系统镜像备份/恢

备份,系统,镜像,恢复,电脑软件,点评:使用wbadmin命令手工生产的Win8.1 Update系统镜像备份的最新版本,简要介绍如下,有需要的用户可以参考下 1。生产系统镜像备份 1,进入启动画面现代,搜索powershell右键单击程序(以管理员身份运行) 2。例如,我们…