51无敌兔
51福利网各种薅羊毛福利网赚分享平台

mysql的event(事件)用法详解定时删除30天以前的数据

如需定时每天删除数据库中某个数据表30天前的数据。

使用数据库 mysql的event(事件)

51福利网

参考资料可以自行百度。下面提供2个我找的教程:

教程一:详细讲解

教程二:


-- 开启事件
SET GLOBAL event_scheduler = 1;  
SET @@global.event_scheduler = 1;  
SET GLOBAL event_scheduler = ON;  
SET @@global.event_scheduler = ON;
-- 创建存储过程
CREATE PROCEDURE `prc_del_alarm`(IN date_inter int) COMMENT '自动删除告警'
BEGIN
delete from yd_alarminfo where (TO_DAYS(NOW()) - TO_DAYS(eventTime))>=date_inter;
END
-- 创建事件,调度。每天执行一次
CREATE EVENT `auto_delete_alarm` ON SCHEDULE EVERY 1 DAY STARTS '2020-06-08 11:00:00'
ON COMPLETION PRESERVE ENABLE COMMENT '自动删除90天以前的告警数据' 
DO call prc_del_alarm(90);



-- 手动执行存储过程
call prc_del_alarm(90);



SHOW VARIABLES LIKE 'event_scheduler';
SELECT @@event_scheduler;
SHOW PROCESSLIST;

-- 查看库下的存储过程,两个都可以
select name from mysql.proc where db='test01';
show procedure status where db='test01';


-- 查看事件
SHOW EVENTS
-- 删除事件
DROP EVENTS IF EXISTS updateInfoStatus
-- 临时关闭事件
ALTER EVENTS updateInfoStatus DISABLE
-- 开启事件
ALTER EVENTS updateInfoStatus ENABLE

赞(0) 打赏
51福利网薅羊毛福利具有时效性,如有失效,请留言
文章名称:《mysql的event(事件)用法详解定时删除30天以前的数据》-51福利网
文章链接:https://www.51wuditu.com/10100
分享到: 更多 (0)

51福利网最新最全薅羊毛,现金红包线报网

51联盟线报群赚钱·合作·帮助

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏