mysql创建存储过程,定时任务,定时删除log

时间:2025-05-04 00:07:19

-- 创建存储过程 清除30天前的日志
create procedure deleteLog()
BEGIN
delete from contract_vlog where create_time<DATE_SUB(CURDATE(), INTERVAL 30 DAY)
end;

-- 创建定时器 每天凌晨3点执行 on schedule every 1 second
create event if not exists eventJob
on schedule EVERY 1 DAY STARTS date_add(date( ADDDATE(curdate(),1)),interval 20 hour)
on completion PRESERVE
do call deleteLog();

-- 启动定时器
SET GLOBAL event_scheduler = 1; -- 启动定时器
SET GLOBAL event_scheduler = 0; -- 停止定时器

-- 开启事件
ALTER EVENT eventJob ON COMPLETION PRESERVE ENABLE; -- 开启事件
ALTER EVENT eventJob ON COMPLETION PRESERVE DISABLE; -- 关闭事件

SHOW VARIABLES LIKE '%sche%'; -- 查看定时器状态

上面是脚本,下面看用natcat 怎么做

1.创建存储过程

mysql创建存储过程,定时任务,定时删除log

mysql创建存储过程,定时任务,定时删除log

2.创建定时任务,调用我们前面创建的存储过程deleteLog

mysql创建存储过程,定时任务,定时删除log

设置调用时间,我这里测试写的每分钟

mysql创建存储过程,定时任务,定时删除log