zoukankan      html  css  js  c++  java
  • mysql event 学习

    mysql 通过事件可以实现定时任务 :

    1、 检查你的MYSQL是否开了这个功能

    show variables like "%scheduler" //注意 最后是er

    2、  打开你的MYSQL的计划任务功能

    使用这个功能之前必须确保event_scheduler已开启,可执行

    SET GLOBAL event_scheduler = 1;
    或SET GLOBAL event_scheduler = ON;
    来开启,也可以直接在启动命令加上 “–event_scheduler=1”,例如:mysqld ... --event_scheduler=1

    my.ini or my.cnf 中的

    [mysqld]
    添加 event_scheduler=ON

     

     二、事件基本操作

    【删除事件】:

    DROP EVENT [IF EXISTS] event_name 

    【关闭事件】

      ALTER EVENT event_name ON  COMPLETION PRESERVE DISABLE;  

    【关闭事件】

    ALTER EVENT event_name ON  COMPLETION PRESERVE ENABLE;  

    三、试验 

    1) 每一秒插入一条数据到数据库里面

    use test;

    CREATE TABLE `aaa` (
    `timeline` varchar(25) NOT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8

     

    查看有哪些事件?

    查看该event创建的详情 

    查看事件执行效果

    2) 一段时间后执行

    15秒后清空表aaa

    每天定时清空test表:

    CREATE EVENT e_test
    ON SCHEDULE EVERY 1 DAY
    DO TRUNCATE TABLE test.aaa;

    当前时间起 过15秒后 每一秒插入一条数据到数据库

    truncate table aaa;
    drop EVENT if EXISTS d;
    drop EVENT if EXISTS a;
    CREATE EVENT a ON SCHEDULE
    every 1 SECOND
    STARTS CURRENT_TIMESTAMP + INTERVAL 15 SECOND
    DO INSERT into aaa values(now());

    show events;
    show variables like "%scheduler";

    定时插入一条数据,十五秒后停止

    truncate table aaa;
    drop EVENT if EXISTS a;
    CREATE EVENT a ON SCHEDULE
    EVERY 1 second
    ENDS CURRENT_TIMESTAMP + INTERVAL 15 SECOND
    COMMENT "test"
    DO INSERT into aaa values(now());


    show events;
    show variables like "%scheduler";

  • 相关阅读:
    php 换行 PHP_EOL
    removeAttribute与removeAttributeNode的区别
    百度地图api 常用 例子
    nth-child()伪类选择器
    c++ 11 lambda表达式
    mysql sql时间戳格式化语句
    Apache Forbidden 403错误提示
    MySQL中查询所有数据库占用磁盘空间大小
    luaj使用 方法签名规则 Cocos2dxLuaJavaBridge
    nginx代理配置备份
  • 原文地址:https://www.cnblogs.com/brady-wang/p/6387503.html
Copyright © 2011-2022 走看看