본문 바로가기

카테고리 없음

DB Event Scheduler ( DB 이벤트 스케줄러)

자바에서도 배치를 사용하여 자동으로 실행되도록하는 기능들을 개발했던 기억이있다

 

DB에서도 이런 스케줄러가 있다는건 알고있었지만 쓸일이없다가

이번에 기능을하나 개발하게되면서

훗날 언젠가는 또 한번은 뒤적뒤적할 것 같아 정리해둔다.

 

이 글을 검색하신 모든분들에게도 도움이되었으면하는 바램입니다.

 

1. 이벤트 스케줄러 ON/OFF 확인

SHOW VARIABLES LIKE 'event%';

 

2. 이벤트 스케줄러 ON/OFF 설정

SET GLOBAL event_scheduler = ON;
SET GLOBAL event_scheduler = OFF;

 

 

3. 이벤트 생성

CREATE EVENT test
ON SCHEDULE EVERY 1 MONTH START CURRENT_TIMESTAMP
DO
SELECT 1;

MONTH면 달, HOUR면 시, DAY면 일등 주기적으로 상황에맞게 개발하면된다.

 

 

4. 이벤트 수정

ALTER EVENT 이벤트명
ON 시작 설정 등등등.... ;

 

 

5. 이벤트 삭제

DROP EVENT 이벤트명;

 

6. 이벤트를 생성하되, 최초 1회만 사용하고 더이상 사용하고싶지않은 이벤트 생성

CREATE EVENT test
ON SCHEDULE AT '2020-01-01 00:00:00'
DO
CREATE TABLE NEW_YEAR (id INT(10))

위와같이 이벤트를 생성할때 뒤에 AT를 붙여주면 된다.

 

 

적절하게 이용하세요~