MySQL表历史数据转移备份

in 系统环境
关注公众号【好便宜】( ID:haopianyi222 ),领红包啦~
阿里云,国内最大的云服务商,注册就送数千元优惠券:https://t.cn/AiQe5A0g
腾讯云,良心云,价格优惠: https://t.cn/AieHwwKl
搬瓦工,CN2 GIA 优质线路,搭梯子、海外建站推荐: https://t.cn/AieHwfX9

每天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`();
关注公众号【好便宜】( ID:haopianyi222 ),领红包啦~
阿里云,国内最大的云服务商,注册就送数千元优惠券:https://t.cn/AiQe5A0g
腾讯云,良心云,价格优惠: https://t.cn/AieHwwKl
搬瓦工,CN2 GIA 优质线路,搭梯子、海外建站推荐: https://t.cn/AieHwfX9
扫一扫关注公众号添加购物返利助手,领红包
Comments are closed.

推荐使用阿里云服务器

超多优惠券

服务器最低一折,一年不到100!

朕已阅去看看