[AWS RDS/MySQL] AWS RDS에서 MySQL 이벤트 스케줄러 설정하기

2025. 2. 10. 12:44·Minding's Programming/AWS
목차
  1. MySQL 이벤트 스케줄러?
  2. AWS RDS에서 이벤트 스케줄러 설정하기
728x90
반응형

MySQL 이벤트 스케줄러?

MySQL의 이벤트 스케줄러는 특정 시간 간격 또는 지정된 시점에 SQL 쿼리를 자동으로 실행할 수 있도록 도와주는 기능으로, 이를 통해 특정 시간에 예약해야 하는 작업들을 반복적으로 실행할 수 있다. Cron과 유사한 역할이라고 보면 되며, DB 내에서 직접 관리된다.

 

MySQL의 장점은 MySQL 서버 내에서 쿼리가 자동으로 실행되기 때문에 외부의 서버 또는 애플리케이션을 통해 스크립트를 보내지 않아도 된다는 것이다. 클라이언트와도 독립적으로 실행되기 때문에, 간단한 작업의 경우 이벤트 스케줄러를 이용하는 장점이 극대화된다.

 

구성 요소

MySQL 이벤트 스케줄러는 크게 '이벤트'와 '스케줄러' 2가지로 나뉘어져 있다.

  1. 이벤트: 실행할 SQL 명령어 또는 명령어 블록이다.
  2. 스케줄러: MySQL 서버에서 이벤트를 관리하고 실행하는 시스템 프로세스

즉, 스케줄러가 '이벤트'를 단위로 실행한다는 개념이다. 스케줄러는 기본적으로 비활성화 되어 있으며, 활성화를 위해서는 아래 명령어를 실행시켜야 한다.

SET GLOBAL event_scheduler = ON;

-- 스케줄러 상태 확인
SHOW VARIABLES LIKE 'event_scheduler';

그리고 아래와 같이 이벤트를 생성해주어야 한다.

-- 반복 실행 이벤트 예시
CREATE EVENT daily_event
ON SCHEDULE EVERY 1 DAY
STARTS '2025-02-10 00:00:00'
DO
BEGIN
    -- 실행할 SQL 문
    DELETE FROM old_data WHERE created_at < NOW() - INTERVAL 30 DAY;
END;

 

하지만 AWS의 RDS에서는 MySQL의 시스템 설정을 직접 변경할 수는 없어 이벤트 스케줄러 설정이 불가능하다. 따라서 '파라미터 그룹(Parameter Group)을 통해 이벤트 스케줄러를 활성화시켜야 한다.

 

AWS RDS에서 이벤트 스케줄러 설정하기

1. 먼저 RDS 페이지에 접속해 '파라미터 그룹' 탭 - '파라미터 그룹 생성' 클릭

2. 파라미터 그룹을 생성해준다. (DB 엔진 버전 확인)

 

3. 생성한 파라미터 그룹의 상세 정보에 'event_scheduler'가 있는 것을 확인할 수 있다.

4. '편집'을 눌러 event_scheduler의 값을 'ON'으로 설정해주고 변경 사항을 저장해준다.

5. 해당 파라미터 그룹을 적용시킬 DB를 선택하고 '수정' 버튼 클릭

6. 추가 구성 탭의 데이터베이스 옵션에서 DB 파라미터 그룹을 위에서 생성한 파라미터 그룹으로 수정해준다.

7. 수정 예약을 '즉시 적용'으로 바꾼 뒤 'DB 인스턴스 수정' 클릭 (재부팅을 해주어야만 해당 파라미터 그룹이 적용된다.)

CREATE EVENT daily_create_view
ON SCHEDULE EVERY 1 DAY
STARTS CURRENT_TIMESTAMP + INTERVAL 1 DAY
DO
BEGIN

	-- 블라스트 view 생성 쿼리
	CREATE OR REPLACE VIEW blast_by_status AS
	SELECT 
	    p.status,
...

END

8. 이후 이벤트를 생성한다.

-- 등록한 이벤트 확인
SHOW EVENTS;

9. SHOW EVENTS라는 쿼리로 생성된 이벤트를 확인할 수 있다.

 

위 단계를 따르면 AWS RDS에서도 이벤트 스케줄러를 설정할 수 있다.

728x90

'Minding's Programming > AWS' 카테고리의 다른 글

[AWS] AWS Redshift Spectrum으로 S3 외부 테이블 조작해보기  (2) 2024.10.30
[AWS] AWS Redshift Serverless 설치 (무료 평가판 / Free Trial)  (0) 2024.10.29
[AWS] ApiGateway  (0) 2024.10.28
[AWS] Lambda  (2) 2024.10.28
[AWS] ECS / ECR  (0) 2024.10.28
  1. MySQL 이벤트 스케줄러?
  2. AWS RDS에서 이벤트 스케줄러 설정하기
'Minding's Programming/AWS' 카테고리의 다른 글
  • [AWS] AWS Redshift Spectrum으로 S3 외부 테이블 조작해보기
  • [AWS] AWS Redshift Serverless 설치 (무료 평가판 / Free Trial)
  • [AWS] ApiGateway
  • [AWS] Lambda
Minding
Minding
  • Minding
    Today's Minding
    Minding
  • 전체
    오늘
    어제
    • 울고넘는 딥러닝 (278)
      • Minding's Baseball (57)
        • MLB Statcast (29)
        • 머신러닝으로 홈런왕 예측하기 (3)
        • 야구칼럼 (12)
        • 야구 규칙, 용어 (1)
        • 2022-23 질롱 코리아 (8)
        • 류현진 등판경기 (4)
      • Minding's Programming (185)
        • 프로그래머스 코딩테스트 (21)
        • Knowledge (44)
        • Numpy & Pandas (6)
        • Excel (3)
        • Git (1)
        • Pygame (11)
        • CV (3)
        • Tensorflow tutorial (4)
        • Kaggle and Dacon (4)
        • 에러 코드 (8)
        • FastAPI (8)
        • Airflow (29)
        • Crawling (6)
        • Django (14)
        • AWS (18)
        • Spark (5)
      • Minding's Reading (30)
        • 머신러닝 딥러닝에 필요한 기초 수학 with 파이.. (2)
        • 칼만필터는 어렵지 않아 (11)
        • 밑바닥부터 시작하는 딥러닝 (6)
        • 메이저리그 야구 통계학 2e (8)
        • 논문읽기 (2)
        • 빅데이터를 지탱하는 기술 (1)
      • Minding's Life (5)
        • 주식 (4)
        • 각종 소식 (1)
  • 블로그 메뉴

    • 홈
    • Baseball
    • Programming
    • Reading
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    mlb stats api
    에어플로우
    파이썬
    데이터 엔지니어
    칼만필터는어렵지않아python
    칼만필터는어렵지않아파이썬
    야구
    파이게임
    칼만필터
    AWS
    머신러닝
    코딩테스트
    KBO
    Python
    프로그래머스
    django
    질롱코리아
    파이썬게임개발
    데이터분석
    pygame
    django python
    딥러닝
    MLB
    KalmanFilter
    메이저리그
    Airflow
    칼만필터는어렵지않아
    넘파이
    게임개발
    FastAPI
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Minding
[AWS RDS/MySQL] AWS RDS에서 MySQL 이벤트 스케줄러 설정하기

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.