MySQL事件 Events

摘要:
[IFNOTEXISTS]//如果事件不存在,是否创建事件_名称?PRESERVE语句的功能是防止事件在执行后被丢弃4.[ENABLE|DESABLE]ENABLE ENABLE event DESABLE close event 5.COMMENT COMMENT 6.由语句执行的DOsql_ SQL语句3.设置全局变量event_调度器的值可以动态控制事件调度器是否被启用。?检查event_ scheduler是否启用mysql˃SHOWVARIABLESLIKE“%event%”;设置Enable MySQL˃SETGLOBALevent_ scheduler=ON;4、 示例:每分钟插入一个日志:DELIMITER//CREATEVENT`user_log_event`ONSCHEDULEEVERY1MINUTESTARTS'2010-12-2700:00:00'?INSERTINTOlogSETaddtime=NOW();END//调用存储过程:DELIMITER//CREATEVENT`user_log_event`ONSCHEDULEEVERY1DAYSTARTS'2010-00-0000:00:00'?
一、关键字: EVENT
 
二、语法:
CREATE EVENT?
[IF NOT EXISTS ] //如果不存在则创建
event_name?
ON SCHEDULE schedle
[ON COMPLETION [NOT] PRESERVE]
[ENABLE|DESABLE]
[COMMENT 'comment']
DO sql_statement
 
说明:
1.event_name 事件的名称
 
2.ON SCHEDULE
有两种设定计划任务的方式:
 
#单次计划任务:
AT 时戳
 
#重复的计划任务
EVERY 时间(单位)的数量 时间单位 [STARTS 时戳][ENDS 时戳]
 
在两种计划任务中,时戳可以是任意的TIMESTAMP 和DATETIME 数据类型,要求提供的是将来的时间(大于CURRENT_TIMESTAMP),而且小于Unix时间的最后时间(等于或小于'2037-12-31 23:59:59')
 
时间单位是关键词:YEAR,MONTH,DAY,HOUR,MINUTE 或者SECOND
 
3.[ON COMPLETION [NOT] PRESERVE]
COMPLETION 当单次计划任务执行完毕后或当重复性的计划任务执行到了ENDS阶段。而声明PRESERVE的作用是使事件在执行完毕后不会被Drop掉
 
4.[ENABLE|DESABLE]
ENABLE 开启事件
DESABLE 关闭事件
 
5.COMMENT
注释
 
6.DO sql_statement
执行的sql语句
 
三、通过设定全局变量event_scheduler 的值即可动态的控制事件调度器是否启用。?
 
查看是否event_scheduler开启
mysql> SHOW VARIABLES LIKE '%event%';
 
设置开启
mysql> SET GLOBAL event_scheduler=ON;
 
四、例子:
 
每分钟插入一条日志:
DELIMITER //
CREATE EVENT `user_log_event` ON SCHEDULE EVERY 1 MINUTE STARTS '2010-12-27 00:00:00'?
ON COMPLETION NOT PRESERVE ENABLE DO?
BEGIN?
INSERT INTO log SET addtime=NOW();
END
//
 
调用存储过程:
DELIMITER //
CREATE EVENT `user_log_event` ON SCHEDULE EVERY 1 DAY STARTS '2010-00-00 00:00:00'?
ON COMPLETION NOT PRESERVE ENABLE DO?
BEGIN
CALL user_log_prov();
END
//

免责声明:文章转载自《MySQL事件 Events》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇selenium的关于选择框的定位GitExtensions工具安装与配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

MySQL-基础

SQL 是一门特殊的语言,专门用来操作关系数据库,不区分大小写 服务器端 安装服务器端:在终端中输入如下命令,回车后,然后按照提示输入 sudo apt-get install mysql-server 启动服务   sudo service mysql start 查看进程中是否存在mysql服务   ps ajx|grep mysql 停止服务   s...

mac 设置 MySQL 数据库默认编码(字符集)为 UTF-8

mac 设置 MySQL 数据库默认编码(字符集)为 UTF-8 原文链接:https://juejin.im/post/5bbdca76e51d45021147de44 鉴于有些刚接触 MySQL 数据库的人,经常会碰到数据库中文显示的问题,MySQL 数据库刚安装时默认编码是 latin1,所以如果在数据库建表的时候没有设置 DEF...

利用MySQL数据库如何解决大数据量存储问题?

提问:如何设计或优化千万级别的大表?此外无其他信息,个人觉得这个话题有点范,就只好简单说下该如何做,对于一个存储设计,必须考虑业务特点,收集的信息如下:1.数据的容量:1-3年内会大概多少条数据,每条数据大概多少字节; 2.数据项:是否有大字段,那些字段的值是否经常被更新; 3.数据查询SQL条件:哪些数据项的列名称经常出现在WHERE、GROUP BY、...

mysql慢查询日志总结

查看慢查询是否开启: mysql>show variables like '%slow_query_log%'; Variable_name       Value slow_query_log       on slow_query_log_file  日志路径 显示为on,已开启,并且下面写出了日志文件的路径。直接cat对应文件即可查看mysql...

php并发控制 , 乐观锁

由于悲观锁在开始读取时即开始锁定,因此在并发访问较大的情况下性能会变差。对MySQL Inodb来说,通过指定明确主键方式查找数据会单行锁定,而查询范围操作或者非主键操作将会锁表。 接下来,我们看一下如何使用乐观锁解决这个问题。 MYSQL 首先我们为counter表增加一列update_time字段,当进行操作时,将先前读取的update_time与当时...

Atitit mysql redis mongodb 性能指标 目录 1.1. 二、 性能比较 1 1.2. 性能极高- Redis能读的速度是110000次/s,写的速度是81000次/s 2 1

Atitit mysql redis mongodb 性能指标   目录 1.1. 二、 性能比较 1 1.2. 性能极高- Redis能读的速度是110000次/s,写的速度是81000次/s 2 1.3. Mysql单表数据量达到5-10G时会出现明细的性能降级 2 1.4. Mongodb 最起码是插入速度是mysql俩倍数 2 1.5. 查询速度就...