Mysql下自动删除指定时间以前的记录的操作方法
网络编程 2021-07-05 14:36www.168986.cn编程入门
这篇文章主要介绍了MySQL下自动删除指定时间以前的记录的操作方法,需要的朋友可以参考下
关于Eventmysql5.1版本开始引进event概念。event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发。通过单独或调用存储过程使用,在某一特定的时间点,触发相关的SQL语句或存储过程。
删除2天以前记录的SQL语句(webserver_monitormemory为表名,time为时间字段)
delete From webserver_monitormemory where DATE(time) <= DATE(DATE_SUB(NOW(),INTERVAL 2 day));
创建存储过程
DELIMITER // CREATE PROCEDURE autodel() -> BEGIN -> delete From webserver_monitormemory where DATE(time) <= DATE(DATE_SUB(NOW(),INTERVAL 2 day)); -> END -> // DELIMITER ;
创建事件,定制每天执行autodel的存储过程
CREATE EVENT `event_auto_del_memorydata` ON SCHEDULE EVERY 1 DAY STARTS '2017-11-20 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO CALL autodel();
开启事件计划(调度器)4种方法。键值1或者ON表示开启;0或者OFF表示关闭
SET GLOBAL event_scheduler = 1; SET @@global.event_scheduler = 1; SET GLOBAL event_scheduler = ON; SET @@global.event_scheduler = ON;
查看当前是否已开启事件计划(调度器)3种方法
SHOW VARIABLES LIKE 'event_scheduler'; SELECT @@event_scheduler; SHOW PROCESSLIST;
事件开启与关闭
ALTER EVENT event_auto_del_memorydata ON COMPLETION PRESERVE ENABLE; //开启某事件 ALTER EVENT event_auto_del_memorydata ON COMPLETION PRESERVE DISABLE; //关闭某事件
这个是最简单也是最重要的,我们要手动的启动这个定时器,要不然是没法工作的。
ALTER EVENT event_time_clear_data ON COMPLETION PRESERVE ENABLE;
,关闭定时器的代码是
ALTER EVENT event_time_clear_data ON COMPLETION PRESERVE DISABLE;
删除存储过程
DROP PROCEDURE pro_clear_data;
删除Event:
DROP EVENT IF EXISTS event_time_clear_data1
以上所述是长沙网络推广给大家介绍的Mysql下自动删除指定时间以前的记录的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,长沙网络推广会及时回复大家的。在此也非常感谢大家对狼蚁SEO网站的支持!
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程