首页 > 数据库 >Mysql 定时删除历史数据

Mysql 定时删除历史数据

时间:2022-11-19 16:36:32浏览次数:33  
标签:00 创建 存储 事件 Mysql 历史数据 event 定时

实现

1.创建存储过程
3.定时调用这个存储过程

创建存储过程(函数)

CREATE PROCEDURE `KeepDatasWith30Days`()
BEGIN
	SELECT @maxId:=max(Id) FROM tableName  WHERE CreateTime<DATE(DATE_SUB(NOW(),INTERVAL 31 DAY));//id是主键 通过主键删除最快  查询获取31天前数据最大ID
	DELETE FROM tableName  WHERE Id <@maxId LIMIT 100000;//限制每次最大删除10w 防止数据量过大 影响正常数据库读写操作 (可根据数据库性能和数据量自行调整)
END

创建事件 定时调用上面的存储过程

  • 确认mysql版本5.1以上
	SELECT VERSION()
  • 确认mysql事件开启可用
	SHOW VARIABLES LIKE '%event_scheduler%'//查看事件是否可用 OFF-不可用
	SET GLOBAL event_scheduler=ON//如果不可用 执行改行命令开启
  • 创建定时事件
        CREATE EVENT del_event
  	ON SCHEDULE
  	EVERY 1 DAY
  	STARTS '2022-11-19 00:00:00'
  	DO CALL KeepDatasWith30Days() //函数名
  • 查看事件是否创建成功 及其状态 结果如图
		SHOW EVENTS


显示正常 符合预期 结束

标签:00,创建,存储,事件,Mysql,历史数据,event,定时
From: https://www.cnblogs.com/Alicia-meng/p/16906339.html

相关文章

  • [Bug0054] Centos7.x初始化数据库时./mysqld: error while loading shared libraries:
    问题Centos7.x初始化数据库时执行命令行mysqld--initialize--usermysql报错:./mysqld:errorwhileloadingsharedlibraries:libaio.so.1:cannotopensharedobj......
  • 肖sir__面试第六天课程__mysql讲解(8.1)
    数据库一、数据库面试1、你常用过哪些数据库?2、你对sql语句熟悉吗?3、常用sql语句有哪些?4、在工作中你使用数据做什么?5、数据库如何测试?==========================......
  • MySQL的on duplicate key update关键字的作用
    1.问题引入这个关键字是在看项目代码的时候,看到SQL语句在批量插入数据的时候看到了这个关键字,于是就学习了一下这个关键字的作用。2.说明作用onduplicatekeyupdate......
  • MySQL 源码解读之-语法解析(四)
    MySQL源码解读之-语法解析(四)在上篇文章中,我们分析了一条sql语句select*frombank;警告bison语法解析器(MYSQLparser函数)生成的AST树的结构,如下图所示:mysql需......
  • 解决Mysql 5.7 不能插入中文的问题
    问题的解决方案问题描述:在学习DML插入中文数据时,发现出现了以下问题insertintotea(id,name)values(2,'徐凤年');ERROR1366(HY000):Incorrectstringv......
  • 【操作系统】Linux下安装mysql、jmeter
    mysql安装安装调试启动官网:https://dev.mysql.com/downloads/repo/yum/下载好需要的rpm源,使用Xftp将rpm传入虚拟机的/root目录下Xshell操作linux,或者直接虚拟机终端......
  • Mest SQL(1)---利用Python将Excel数据表导入MySQL数据库
    【最终呈现效果】【原始Excel数据表】【代码实现及注释】importpandasaspdimporttimeimportreti=time.strftime('%Y_%m_%d_%H%M%S',time.localtime())myexcel=r'G:\M......
  • Mysql历史介绍及多版本安装
    目录一、数据库概述1.1什么是数据库1.2数据库的分类1.3Mysql企业版本选择二、Windows多版本部署Mysql数据库2.1mysql5.6版本安装2.2mysql5.7版本安装2.3mysql8.0版......
  • MYSQL
    创建数据表 CREATETABLEIFNOTEXISTSstudent(idINT(4)NOTNULLAUTO_INCREMENTCOMMENT'学号',NAMEVARCHAR(30)NOTNULLDEFAULT'小明'COMMENT'姓名',PRI......
  • 提升mysql服务器性能(存储引擎与配置参数设置)
    服务层实现了与引擎无关的性能 frm用于记录结构 使用表锁 使用共享所和读锁支持全文索引 前缀索引  如果不对表进行操作尽可以进行压缩; myisamchk 命令行工具需......