zoukankan      html  css  js  c++  java
  • Mysql event事件用法

    公司的数据库需要进行定期删除数据,需要用到mysql event事件,学习和梳理这块知识。

    1查看event是否开启
    SHOW VARIABLES LIKE 'event_scheduler';

    2开启event
    SET GLOBAL event_scheduler = 1;

    3查看所有的event
    select * from mysql.event G

    4删除event
    drop event event_name

    5语法:

    CREATE
        [DEFINER = { user | CURRENT_USER }]
        EVENT
        [IF NOT EXISTS]
        event_name
        ON SCHEDULE schedule
        [ON COMPLETION [NOT] PRESERVE]
        [ENABLE | DISABLE | DISABLE ON SLAVE]
        [COMMENT 'comment']
        DO event_body;
    
    schedule:
        AT timestamp [+ INTERVAL interval] ...
      | EVERY interval
        [STARTS timestamp [+ INTERVAL interval] ...]
        [ENDS timestamp [+ INTERVAL interval] ...]
    
    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:事件的名称
    schedule:事件触发点,【AT timestamp】一般用于只执行一次,一般使用时可以使用当前时间加上延后的一段时间,例如:AT CURRENT_TIMESTAMP + INTERVAL 1 HOUR。也可以定义一个时间常量,例如:AT '2006-02-10 23:59:00';【EVERY interval】一般用于周期性执行,可以设定开始时间和结束时间。
    ON COMPLETION [NOT] PRESERVE:默认是执行完之后会自动删除。如果想保留该事件使用ON COMPLETION PRESERVE,使用select查询语句可以查询到;如果不想保留也可以设置ON COMPLETION [NOT] PRESERVE。
    ENABLE | DISABLE:设置启用或者禁止这个事件。
    COMMENT:增加注释。

    6案例:
    创建一个test表,只有一个字段data类型 名为time的字段
    每间隔5秒钟在表格table中输入一条数据。

    delimiter |
    CREATE EVENT test1
    ON SCHEDULE every 5 second
    ON COMPLETION PRESERVE
    DO BEGIN
      insert into test(time) values(now());
    END |
    delimiter ;
    

    每间隔20秒删除表格中的数据

    delimiter |
    CREATE EVENT test2
    ON SCHEDULE EVERY 20 second
    ON COMPLETION PRESERVE
    DO BEGIN
      delete from test;
    END |
    delimiter ;
    

    delimiter | 意思将语句的结束标志符换为|,最后再换为;

  • 相关阅读:
    前端 一——介绍
    python知识点拾遗
    python 五——自定义线程池
    python 四——线程、进程、协程
    python 三——列表、字典、元祖、字符串、set
    动态规划法求解0-1背包
    贪心法求解背包问题
    学生成绩管理系统
    [C语言练习]学生学籍管理系统
    [C语言练习]万年历加强版
  • 原文地址:https://www.cnblogs.com/ww11/p/8966371.html
Copyright © 2011-2022 走看看