mysql中event的用法详解

一、基本概念 mysql5.1版本开始引进event概念。event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发。通过单独或调用存储过程使用,在某一特定的时间点,触发相关的SQL语句或存储过程。

二、适用范围 对于每隔一段时间就有固定需求的操作,如创建表,删除数据等操作,可以使用event来处理。 例如:使用event在每月的1日凌晨1点自动创建下个月需要使用的三张表。

三、使用权限 单独使用event调用SQL语句时,查看和创建需要用户具有event权限,调用该SQL语句时,需要用户具有执行该SQL的权限。Event权限的设置保存在mysql.user表和mysql.db表的Event_priv字段中。 当event和procedure配合使用的时候,查看和创建存储过程需要用户具有create routine权限,调用存储过程执行时需要使用excute权限,存储过程调用具体的SQL语句时,需要用户具有执行该SQL的权限。 查看EVENT命令有如下几种: (1)查询mysql.event表; (2)通过SHOW EVENTS命令; (3)通过SHOW FULL EVENTS命令; (4)通过查询information_schema.events表 (5)SHOW CREATE EVENT。 总之,event的使用频率较低建议使用root用户进行创建和维护。

要使event起作用,MySQL的常量GLOBAL event_scheduler必须为on或者是1。

SHOW VARIABLES LIKE 'event_scheduler';

SET GLOBAL event_scheduler = 1; 当你设定事件计划为0 或OFF,即关闭事件计划进程的时候,不会有新的事件执行,但现有的正在运行的事件会执行到完毕 对于我们线上环境来说,使用event时,注意在主库上开启定时器,从库上关闭定时器,event触发所有操作均会记录binlog进行主从同步,从库上开启定时器很可能造成卡库。切换主库后之后记得将新主库上的定时器打开。 请特别注意!

原文发布于微信公众号 - php(phpdaily)

原文发表时间:2015-12-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏乐沙弥的世界

使用RMAN迁移文件系统数据库到ASM

在实际的工作过程中,由于ASM磁盘管理的便利性,因此很多时候需要将文件系统的数据库迁移到ASM,本文演示了如何将文件系统数据库迁移到ASM实例。

492
来自专栏沃趣科技

使用pg_stat_statement监控pgsql遇到的问题

pg_stat_statements是PG中监控数据库活动的重要插件,通过它可以获得SQL的统计信息,例如该SQL被调用了多少次,返回了多少记录,在读写数据上...

3615
来自专栏张善友的专栏

非域环境下使用证书设置数据库镜像

数据库镜像是将数据库事务处理从一个SQL Server数据库移动到不同SQL Server环境中的另一个SQL Server数据库中。镜像不能直接访问;它只用在...

1745
来自专栏程序员的SOD蜜

使用SQLServer同义词和SQL邮件,解决发布订阅中订阅库丢失数据的问题

最近给客户做了基于SQLServer的发布订阅的“读写分离”功能,但是某些表数据很大,经常发生某几条数据丢失的问题,导致订阅无法继续进行。但是每次发现问题重新做...

2707
来自专栏weixuqin 的专栏

MySQL 学习笔记(二):数据库更新、视图和数据控制

3015
来自专栏乐沙弥的世界

基于mysqldump快速搭建从库

    mysql主从搭建总的来说大致分为3个步骤,一是为主从实例添加复制所需参数以及创建复制用的账户,二在是需要在主库建立快照,三是在从库上添加指向主库IP,...

521
来自专栏维C果糖

史上最简单的 MySQL 教程(三十五)「数据备份与还原(上)」

数据备份与还原的方式有很多种,具体可以分为:数据表备份、单表数据备份、SQL备份和增量备份。

3967
来自专栏杨建荣的学习笔记

动态创建MySQL Group Replication的节点(r11笔记第84天)

前几天分享了下搭建MySQL Group Replication的脚本, 分分钟搭建MySQL Group Replication测试环境(r11笔记第82天)...

3106
来自专栏沃趣科技

mysqldump与innobackupex备份过程你知多少(三)

相关阅读: mysqldump与innobackupex备份过程你知多少(二) mysqldump与innobackupex备份过程你知多少(一) mysqld...

43213
来自专栏北京马哥教育

pt-table-checksum使用实践

在工作中接触最多的就是mysql replication。由于现在公司也还在使用mysql 5.1.x版本,在复制方面还是比较多的问题: 比如主库宕机或者从库宕...

4268

扫码关注云+社区