Mysql 创建定时清理事件

SHOW VARIABLES LIKE 'event_scheduler';  --查看是否启用了事件 如果是**ON** 就是已启用 
SET GLOBAL event_scheduler = ON;  -- 'event_scheduler'为**OFF** 则需要手动启用 【注】如果是主从库 仅主库设置启用 否则易主从不一致 主从复制报错

SELECT * FROM information_schema.events; -- 查看所有事件 
use DDR; -- 确定当前事件应用的库
DROP EVENT IF EXISTS DDR.e_delete_ddr_log; --如果旧事件不生效 需要删除 则使用该命令  DDR.e_delete_ddr_log 库.事件名

-- 创建事件 每天01:18执行 定时清理大于20天的日志
CREATE EVENT IF NOT EXISTS DDR.e_delete_ddr_log
ON SCHEDULE
  EVERY 1 DAY
  STARTS TIMESTAMP(CURRENT_DATE + INTERVAL 1 DAY) + INTERVAL '01:18' HOUR_MINUTE
DO
  DELETE FROM DDR.DDR_Log
  WHERE DATEDIFF(NOW(), CreateTime) > 20;

posted @ 2025-06-21 13:24  C余L小R鱼  阅读(14)  评论(0)    收藏  举报