mysql 定期删除表中无用数据

本文介绍如何在MySQL5.1中利用EVENT特性创建定时器,以实现每日自动删除指定表中过期数据的功能。具体步骤包括:检查事件调度器状态、启用事件调度器、创建及配置定时任务、验证及管理定时器。

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






转载于:https://www.cnblogs.com/prettrywork/p/7892315.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值