[MySQL] 이벤트 스케줄러
이벤트 스케줄러는 배치성 작업 쿼리를 날릴 때 유용한 MySQL의 자체 기능 중 하나다.
실행할 쿼리와, 실행될 시간을 정해서 정해진 시간에 맞춰 특정 쿼리가 실행되도록 하는 것이다.
대략적인 정의법은 아래와 같다.
CREATE EVENT 이벤트명
ON SCHEDULE EVERY '20' MINUTE
STARTS '2021-06-25 20:21:27.000'
ON COMPLETION PRESERVE
ENABLE
COMMENT '테스트용'
DO
update foo
set bar = '1234'
where 1=1;
위의 이벤트는 '2021-06-25 20:21:27.000'부터 시작해서 20분마다 DO 밑의 쿼리를 자동으로 실행시킬 거란 뜻이다.
위의 MINUTE은 시간(DAY_HOUR), 초(SECOND), 일(DAY) 단위로도 바꿀 수 있다.
참조
https://dev.mysql.com/doc/refman/8.0/en/create-event.html