Mysql定时删除表数据

由于用户环境有张日志表每天程序都在狂插数据,导致不到一个月时间,这张日志表就高达200多万条记录,但是日志刷新较快,里面很多日志没什么作用,就写了个定时器,定期删除这张表的数据。

  1. 首先查看mysql是否开启定时任务开关
    SHOW VARIABLES LIKE 'event_scheduler';
    Value为ON则已打开,OFF则关闭

    如果是OFF,就先打开:SET GLOBAL event_scheduler = ON;

然后创建我们想要的定时器及删除存储过程

c 复制代码
delimiter $$  
drop event if exists delplan;  
create event delplan
on schedule   
EVERY 1 DAY  
 STARTS '2019-07-02 00:00:00'  
ON COMPLETION  PRESERVE ENABLE  
do  
begin  
  delete from sys_prepose_sync_record where Sync_Time<(CURRENT_TIMESTAMP()-INTERVAL 497 HOUR);  
end $$  
delimiter;

最后把上面的语句在数据库执行一遍,大功告成,可以删除Sync_Time在497小时之前的数据了。

如果不想用该定时器了的话,可以直接在数据库事件中将状态更改为ENable即可。

使用navicat连接的数据库->事件->找到对应的事件修改

如果想要调整定时器执行时间间隔,可以直接在事件中修改

相关推荐
kisy夏2 小时前
多千帆运营平台
大数据·爬虫·mysql
AI人工智能+电脑小能手7 小时前
【大白话说Java面试题 第87题】【Mysql篇】第17题:分布式事务的实现原理?
java·数据库·分布式·mysql·面试
键盘上的猫头鹰11 小时前
【MySQL 教程(八)】索引、事务、用户管理、导入导出与分页查询
数据库·python·mysql
Rick199313 小时前
索引的排序和分组
数据库·mysql
不爱编程的小陈13 小时前
事务的进化:从MySQL单机事务到TiDB分布式事务的探究
分布式·mysql·tidb
ServBay13 小时前
不要再盲选了,PostgreSQL、MySQL与SQLite真实性能对比
数据库·mysql·sqlite
無限進步D13 小时前
MySQL 创建和管理表
数据库·mysql
Rick199315 小时前
mysql联合索引经典实例
java·数据库·mysql
独隅15 小时前
MySQL 接入不同 AI 大模型进行数据管理的全面指南(MySQL + AI)
数据库·人工智能·mysql
我是一颗柠檬17 小时前
【MySQL全面教学】MySQL备份与恢复Day14(2026年)
数据库·后端·mysql