mysql 定时执行存储过程

来源:互联网 发布:饼干是什么意思网络上 编辑:程序博客网 时间:2024/05/16 10:19
CREATE DEFINER=`root`@`%` PROCEDURE `pro_user_ucwc_list_decId`()
BEGIN
    set @v_sql = concat("insert into t_alarm_log (devId,cvs,createDate) SELECT @devId:=devid , @cvs:=sum(vcs),curdate() FROM db_cloudCount.`t_user_ucvvc_list_",date_sub(curdate(),interval 1 day),"` group by devId ");
prepare stmt from @v_sql;  #预处理需要执行的动态SQL,其中stmt是一个变量
EXECUTE stmt;      #执行SQL语句
deallocate prepare stmt;
    
    DELETE FROM db_cloudCount.t_alarm_log WHERE CREATEDATE <= DATE_SUB(CURDATE(), INTERVAL 1 MONTH);
    commit;

End


--每天定时2:30运行

CREATE event IF NOT EXISTS user_ucwc_list_decId_event ON SCHEDULE EVERY 1 DAY  
STARTS '2016-07-05 02:30:00' 
ON COMPLETION PRESERVE   
DO CALL pro_user_ucwc_list_decId();

##30秒执行一次

CREATE event IF NOT EXISTS user_ucwc_list_decId_event ON SCHEDULE EVERY 30 second  
ON COMPLETION PRESERVE   
DO CALL pro_user_ucwc_list_decId();

0 0
原创粉丝点击