MysqlEventScheduler를 사용하여 미리 생성된 procedure을 call 하여 하루에 한번씩 실행되도록 사용해봤다.
스케줄 생성 전 확인
SHOW VARIABLES LIKE 'event%';
MySQL 서버의 변수 중 이름이 'event'로 시작하는 모든 변수를 보여줍니다.
SET GLOBAL event_scheduler = ON;
MySQL 이벤트 스케줄러를 활성화 해줍니다. 이벤트 스케줄러는 지정된 일정에 따라 이벤트를 자동으로 실행하는 역할을 합니다.
스케줄 생성
CREATE EVENT <schedulerName>
on SCHEDULE EVERY 1 DAY
STARTS 'YYYY-MM-DD HH:mm:ss'
COMMENT '하루에한번 HH시mm분에 실행되는 프로시저'
DO
call MACHINE_STD_TODAY() ;
하루에 한번 실행되고 시간을 설정하여 특정 시간에 실행되도록 세팅 하여 procedure를 호출 할 수 있게끔 했습니다.
스케줄 확인
SELECT * FROM information_schema.events;
위 명령어를 통하여 스케줄러가 잘 생성되었는지 확인 합니다.
스케줄 삭제
Drop event <schedulerName>;