加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_常德站长网 (https://www.0736zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql定时器定时删除表数据

发布时间:2022-10-12 12:54:35 所属栏目:MySql教程 来源:
导读:  由于测试环境有张日志表没定时2分钟程序就狂插数据,导致不到1一个月时间,这张日志表就占用了6.7G的空间,但是日志刷新较快,有些日志就没什么作用,就写了个定时器,定期删除这张表的数据

  首先先查看m
  由于测试环境有张日志表没定时2分钟程序就狂插数据,导致不到1一个月时间,这张日志表就占用了6.7G的空间,但是日志刷新较快,有些日志就没什么作用,就写了个定时器,定期删除这张表的数据
 
  首先先查看mysql是否开启定时任务开关
 
  # SHOW VARIABLES LIKE 'event_scheduler';
 
  ---------------------
 
  Value为ON则已打开,OFF则关闭
 
  如果是OFF,就先打开:
 
  # SET GLOBAL event_scheduler = ON;
 
  然后创建我们想要的定时器
 
  DELIMITER $
 
  DROP EVENT IF EXISTS deleteLog;
 
  CREATE EVENT deleteLog
 
  ON SCHEDULE EVERY 300 SECOND
 
  ON COMPLETION PRESERVE
 
  DO BEGIN
 
  delete from ftp_log where TO_DAYS(now())-TO_DAYS(createOn)>2;
 
  END$
 
  DELIMITER ;
 
  该脚本的意思是:每300秒执行一次计划,执行的动作为删除两天前的数据
 
  创建完成后MySQL 删除数据库,查看定时器
 
  # select * from mysql.event;
 

(编辑:应用网_常德站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!