다른 명령
[MySQL]이벤트 스케줄러 사용하기(event scheduler)
스케줄러 의 상태 확인
SHOW VARIABLES LIKE 'event%';
스케줄러 시작/종료 ON/OFF
SET GLOBAL event_scheduler = ON ; SET GLOBAL event_scheduler = OFF ;
스케줄러 확인 Query
SELECT * FROM information_schema.events;
event scheduler 생성하기
(MONTH : 월 / HOUR : 시간 / DAY : 일)등으로 Scheduler 설정 가능 -- 수행할 작업은 DO 아래행에 작성 -- Procedure , 일반 쿼리문 사용
CREATE EVENT EVT_AUTOSCHEDULER ON SCHEDULE EVERY 1 DAY STARTS '2021-05-19 00:00:00' DO CALL SP_GET_MAX_PERCENT_STOCK();
-- 평일만 작업 가능
CREATE EVENT EVT_AUTOSCHEDULER ON SCHEDULE EVERY 1 DAY STARTS '2021-05-19 00:00:00' DO if DAYOFWEEK(curdate()) between 2 and 6 then Delete from attendance where Att_mnth=Month(CurDate()) and Att_day=DayOfMonth(CurDate()) ; end if;
스케줄러 scheduler 수정하기
ALTER EVENT EVT_AUTOSCHEDULER ON SCHEDULE EVERY 1 MONTH STARTS '2021-05-19 00:00:00' DO CALL SP_GET_MAX_PERCENT_STOCK();
스케줄러 삭제
DROP EVNET EVT_AUTOSCHEDULER