zoukankan      html  css  js  c++  java
  • mysql通过事件定时删除过期数据记录方法

    1、  查看MySQL是否开启了事件功能

    查看命令:

    show variables like '%sc%';

    打开event_scheduler(临时开启,MySQL服务重启后时效)

    SET GLOBAL event_scheduler = ON;

    永久开启方法:my.cnf中[mysqld]添加event_scheduler=on #重启服务

    2、  创建事件

    create event myevent on SCHEDULE every 5 second do delete from Syslog.SystemEvents where ReceivedAt<(CURRENT_TIMESTAMP() + INTERVAL -5 DAY);#删除5天前的数据

    说明:

    ReceivedAt:数据库Syslog.Systemevents表中的时间字段

    (date,INTERVAL expr type):

    date:数据库当前时间CURRENT_TIMESTAMP()

    INTERVAL:关键字(间隔)

    expr:具体的时间间隔(-5)

    type:时间单位:

    MICROSECOND

    间隔单位:毫秒

    SECOND

    间隔单位:秒

    MINUTE

    间隔单位:分钟

    HOUR

    间隔单位:小时

    DAY

    间隔单位:天

    WEEK

    间隔单位:星期

    MONTH

    间隔单位:月

    QUARTER

    间隔单位:季度

    YEAR

    间隔单位:年

    SECOND_MICROSECOND

    复合型,间隔单位:秒、毫秒,expr可以用两个值来分别指定秒和毫秒

    MINUTE_MICROSECOND

    复合型,间隔单位:分、毫秒

    MINUTE_SECOND

    复合型,间隔单位:分、秒

    HOUR_MICROSECOND

    复合型,间隔单位:小时、毫秒

    HOUR_SECOND

    复合型,间隔单位:小时、秒

    HOUR_MINUTE

    复合型,间隔单位:小时分

    DAY_MICROSECOND

    复合型,间隔单位:天、毫秒

    DAY_SECOND

    复合型,间隔单位:天、秒

    DAY_MINUTE

    复合型,间隔单位:天、分

    DAY_HOUR

    复合型,间隔单位:天、小时

    YEAR_MONTH

    复合型,间隔单位:年、月

    如果存在事件,请先删除,删除命令:drop event if exists myevent;

    3、  开启事件

    alter event myevent on completion preserve enable;

    4、关闭事件的命令:alter event myevent on completion preserve disable;

  • 相关阅读:
    Java数据结构和算法——汉诺塔问题
    svn的使用
    Struts+iBatis+Spring+mysql整合开发
    Java Collection
    IOS推送功能的实现(javapns)
    [工具库]JFileDownloader工具类——多线程下载网络文件,并保存在本地
    xsl 中 foreach 的使用
    网页制作技巧24条
    js 实现 datagrid 鼠标移动时datagrid 表的该变
    How to extend ASP.NET datagrid for multiselection of data rows.
  • 原文地址:https://www.cnblogs.com/wang-yaz/p/12424858.html
Copyright © 2011-2022 走看看