zoukankan      html  css  js  c++  java
  • mysql 定期删除表中无用数据

    MySQL5.1.x版本中引入了一项新特性EVENT,定期执行某些事物,这可以帮助我们实现定期执行某个小功能,不在依赖代码去实现。

    我现在有一张表,这张表中的数据有个特点,每天都会有大量数据插入,但是昨天的数据已经不存在一点价值。现在需要在mysql中创建

    一个定时器,每天删除昨天之前的数据。

    首选查看mysql事件开启情况

    SHOW VARIABLES LIKE 'event_scheduler';  

    默认情况下是关闭的,需要我们去打

    SET GLOBAL event_scheduler = ON;  

    创建定时器

    CREATE EVENT kbk_del  
    ON SCHEDULE EVERY 1 DAY   
    DO DELETE FROM  dynamic_place WHERE DATE_SUB(CURDATE(), INTERVAL 2 DAY) <= DATE(gmt_datetime);

    其中“kbk_del”为定时器的名字,“EVERY 1 DAY” 为每天多执行

    DELETE FROM  dynamic_place WHERE DATE_SUB(CURDATE(), INTERVAL 2 DAY) <= DATE(gmt_datetime);”就是sql语句 删除两天前数据

    查看你所创建地定时事件

    SELECT * FROM information_schema.events

    删除定时器

    DROP event kbk_del






  • 相关阅读:
    第10组 Beta冲刺(2/5)
    第10组 Beta冲刺(1/5)
    第10组 Alpha事后诸葛亮
    3月7-第十次机试课记录
    3月5-第九次机试课记录
    3月2-第八次机试课记录
    3月1-第六次机试课记录
    2月28-第五次机试课记录
    STL
    2月27-第四次机试课记录
  • 原文地址:https://www.cnblogs.com/prettrywork/p/7892315.html
Copyright © 2011-2022 走看看