美文网首页
MySql 事件任务

MySql 事件任务

作者: Demon鑫 | 来源:发表于2016-09-21 14:01 被阅读0次

    一、event 状态

    查看event是否开启
    show variables like '%sche%';
    
    开启event_scheduler
    set global event_scheduler = on;
    
    设置重启时事件还保持开启状态
    windows

    my.ini 配置文件

    [mysqld]
    event_scheduler = ON
    
    linux

    my.cnf 配置文件

    [mysqld]
    event_scheduler = ON
    

    二、创建事件任务

    DROP EVENT IF EXISTS `update_event`;
    -- 如果原来存在该名字的任务计划则先删除
    DELIMITER ;;
    -- 分割
    CREATE EVENT `update_event` ON SCHEDULE EVERY 1 DAY STARTS '2016-09-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO
    -- CREATE EVENT `update_event`:创建一个`update_event`的事件
    -- ON SCHEDULE EVERY 1 DAY STARTS '2016-09-01 00:00:00':每天执行一次,开始时间'2016-09-01 00:00:00'
    -- ON COMPLETION [NOT] PRESERVE:当事件不会再发生时(删除/不删除)该事件
    -- ENABLE DO:系统将执行这个事件
    
    BEGIN -- 事件开始
    
    
    -- 事件1
    insert into xx(
        xxx
    )
    SELECT 
        xxx
    FROM 
        xxx;
    
    -- 事件1
    update 
        xx 
    set 
        xx=xx
    where 
        xx=xx;
    
    
    END;; -- 事件结束
    DELIMITER ;
    

    三、事件任务开关

    开户事件任务
    alter event update_event ON COMPLETION PRESERVE ENABLE;  
    
    关闭事件任务
    alter event update_event ON COMPLETION PRESERVE DISABLE;
    

    2016/9/21 14:02:34

    相关文章

      网友评论

          本文标题:MySql 事件任务

          本文链接:https://www.haomeiwen.com/subject/undaettx.html