MySQL表历史数据转移备份

诸葛靓
• 阅读 3886

每天4点将4天前的数据转移到历史表,减少业务表的压力。

  1. 确认MySQL计划任务是否开启

    • 查看定时任务状态
      show variables like '%event_sche%'
    • 开启定时任务
      set global event_scheduler = 1
    • 关闭定时任务
      set global event_scheduler = 1
  2. 创建存储过程(即:函数)

    CREATE DEFINER=`root`@`localhost` PROCEDURE `dtl_move_his`( )
    BEGIN
    /*备份4天之前的数据*/
    INSERT INTO `dtl_his` SELECT
    *
    FROM
        `dtl` AS d 
    WHERE
        DATE( d.create_time ) <= DATE_SUB( CURDATE(), INTERVAL + 4 DAY );
    /*删除4天之前的数据*/
    DELETE 
    FROM
        `dtl` AS d
    WHERE
        DATE( d.create_time ) <= DATE_SUB( CURDATE(), INTERVAL + 4 DAY );
    END
  3. 创建计划任务(即:事件)

    CREATE EVENT `db`.`dtl_move_his_event`
    ON SCHEDULE
    EVERY '1' DAY STARTS '2019-12-12 04:00:00'
    DO CALL `dtl_move_his`();
点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
4年前
java代码定时备份mysql数据库及注意事项——基于 springboot
一、需求:定时备份数据库数据二、分析:1\.定时任务2\.备份数据库表结构和数据 三、实现: 1\.pom文件:<?xmlversion"1.0"encoding"UTF8"?<projectxmlns"http://maven.apache.org/POM/4.0.0"xmlns
Stella981 Stella981
4年前
SpringBoot学习笔记:计划任务
SpringBoot学习笔记:计划任务计划任务在企业的实践生产中,可能需要使用一些定时任务,如月末、季末和年末需要统计各种各样的报表,每周自动备份数据等。在Spring中使用定时任务1、加入@EnableScheduling注解,以启用定时任务机制@EnableS
Stella981 Stella981
4年前
SQL Server 迁移数据到MySQL
SQLServer迁移数据到MySQL一、背景由于要在sqlserver中导出一些报表还要对一些表进行一些特殊处理,好久没用功sqlserver了,想着导入到mysql中更好操作些,所以需要把SQLServer的数据转移到MySQL;由于涉及的表比较多,所以想在MySQL中生成对应表并导入数据;上网找了些资料,如:将AC
Easter79 Easter79
4年前
SQL Server 迁移数据到MySQL
SQLServer迁移数据到MySQL一、背景由于要在sqlserver中导出一些报表还要对一些表进行一些特殊处理,好久没用功sqlserver了,想着导入到mysql中更好操作些,所以需要把SQLServer的数据转移到MySQL;由于涉及的表比较多,所以想在MySQL中生成对应表并导入数据;上网找了些资料,如:将AC
Wesley13 Wesley13
4年前
MySQL定时执行脚本(计划任务)命令实例
在mysql中我们可以直接进行一些参数设置让它成定时为我们执行一些任务了,这个虽然可以使用windows或者linux中的计划任务实现,但是mysql本身也能完成查看event是否开启复制
Wesley13 Wesley13
4年前
MYSQL定时任务
原文:MYSQL定时任务定时清除备份数据(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.cnblogs.com%2Flonecloud%2Fp%2F11044182.html)背景由于项目需要,每个月的历史存量数据需要进行一个归档和备份操作,以及一些日志表
Wesley13 Wesley13
4年前
mysql中写存储过程加定时任务
本来项目中下用quartz定时任务来做数据报表的定时计算插入,后面考虑性能改为mysql中写存储过程加定时任务。定时每周日计算所有员工相关工作量,插入统计数据表中BEGINdeclaresumwlFLOAT;/完成/declareremovewlFLOAT;/扣除/declareaddwl
Wesley13 Wesley13
4年前
Mysql创建定时事件,定时器
查看Mysql的定时器是否开启showvariableslike'event_scheduler';开启Mysql定时器SETGLOBALevent_scheduler1;关闭Mysql定时器SETGLOBALevent_scheduler0;开启
Easter79 Easter79
4年前
SpringBoot学习笔记:计划任务
SpringBoot学习笔记:计划任务计划任务在企业的实践生产中,可能需要使用一些定时任务,如月末、季末和年末需要统计各种各样的报表,每周自动备份数据等。在Spring中使用定时任务1、加入@EnableScheduling注解,以启用定时任务机制@EnableS
Stella981 Stella981
4年前
SpringBoot项目使用多线程处理任务时无法通过@Autowired注入bean
  最近在做一个“温湿度控制”的项目,项目要求通过用户设定的温湿度数值和实时采集到的数值进行比对分析,因为数据的对比与分析是一个通过前端页面控制的定时任务,经理要求在用户开启定时任务时,单独开启一个线程进行数据的对比分析,并将采集到的温湿度数值存入数据库中的历史数据表,按照我们正常的逻辑应该是用户在请求开启定时任务时,前端页面通过调用后端接口,创建一个新的线
Easter79 Easter79
4年前
SpringBoot项目使用多线程处理任务时无法通过@Autowired注入bean
  最近在做一个“温湿度控制”的项目,项目要求通过用户设定的温湿度数值和实时采集到的数值进行比对分析,因为数据的对比与分析是一个通过前端页面控制的定时任务,经理要求在用户开启定时任务时,单独开启一个线程进行数据的对比分析,并将采集到的温湿度数值存入数据库中的历史数据表,按照我们正常的逻辑应该是用户在请求开启定时任务时,前端页面通过调用后端接口,创建一个新的线