DB/MySQL

Mysql Event Scheduler

잔망루피 2023. 12. 28. 00:27
반응형

Scheduler는통계와 같은 Batch 작업, 순위 데이터처럼 DB에 과부하가 많이 걸리는 작업 또는 정기 데이터 백업과 같은 정기적으로 수행되어야하는 작업에 주로 사용한다. 

 

 

 

Event Scheduler 사용 여부 확인

SHOW VARIABLES LIKE 'event%';

Value가 OFF라면, SET GLOBAL event_scheduler=ON;으로 변경할 수 있다.

 

 

저장된 Event Scheduler가 있는지 확인

SHOW EVENTS;

 

SELECT * FROM information_schema.EVENTS;

 

 

 

Event Scheduler 작성예시 

DROP EVENT IF EXISTS delete_event;
CREATE EVENT delete_event
	ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 5 MINUTE
    DO
    DELETE from user;

현재 시각으로부터 5분 뒤에 user 테이블에 있는 모든 데이터를 삭제하는 이벤트다.

 

 

 


참고 👇👇👇

https://dev.mysql.com/doc/refman/8.0/en/create-event.html

 

MySQL :: MySQL 8.0 Reference Manual :: 13.1.13 CREATE EVENT Statement

13.1.13 CREATE EVENT Statement CREATE [DEFINER = user] EVENT [IF NOT EXISTS] event_name ON SCHEDULE schedule [ON COMPLETION [NOT] PRESERVE] [ENABLE | DISABLE | DISABLE ON SLAVE] [COMMENT 'string'] DO event_body; schedule: { AT timestamp [+ INTERVAL interv

dev.mysql.com

 

반응형