1. 程式人生 > >mysql儲存過程和計劃任務【叢集下,計劃任務的執行控制】

mysql儲存過程和計劃任務【叢集下,計劃任務的執行控制】

DROP PROCEDURE IF EXISTS `p_test_cluster`;
DELIMITER ;;
CREATE  PROCEDURE `p_test_cluster`()
BEGIN

    DECLARE iState INTEGER DEFAULT 0;
  select running_state into iState from tb_sys_task where job_name='prc_run_3_o_clock' and running_state=0;
    if(iState=0)then 
    update tb_sys_task set running_state=1 where job_name='prc_run_3_o_clock';

insert into tb_run_devlog(log_type,log_name,user_id) values('event','p_test_cluster',10);
    
        update tb_sys_task set running_state=0 where job_name='prc_run_3_o_clock';
  end if;

END;
;;
DELIMITER ;

drop event if EXISTS evt_test_5_minutes;
CREATE EVENT evt_test_5_minutes
ON SCHEDULE
EVERY 5 MINUTE  STARTS DATE_ADD(CURRENT_TIMESTAMP(),INTERVAL 1 MINUTE)
ENABLE
DO
call p_test_cluster();