• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL5.6 한글메뉴얼) [close]
  • 1. MySQL 5.6 새로운 기능
  • 2. MySQL 설치 및 업그레이드
  • 3. MySQL Tutorial
  • 4. MySQL 프로그램
  • 5. MySQL 서버관리
  • 6. 보안
  • 7. 백업 및 복구
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 14. InnoDB 스토리지 엔진
  • 15. 기타 스토리지 엔진
  • 16. 고가용성 및 확장성
  • 17. 리플리케이션
  • 18. MySQL Cluster
  • 19. 파티셔닝
  • 20. Stored Programs and Views
  • 1. Stored Programs 정의
    2. 스토어드 루틴 (프로시저 및 함수)의 사용
    3. 트리거 사용
    4. Event Scheduler 사용
    1. Event Scheduler 개요
    2. Event Schedule 구성
    3. Event 구문
    4. Event Metadata
    5. Event Scheduler Status
    6. Event Scheduler와 MySQL권한
    5. Views 사용
    6. Stored Programs 및 Views 액세스 제어
    7. Stored Programs의 Binary Logging
  • 21. INFORMATION_SCHEMA
  • 22. PERFORMANCE SCHEMA
  • 23. 컨넥터 및 API
  • 24. MySQL 확장
  • 25. MySQL Enterprise Edition
  • 26. MySQL Workbench
  • 27. 제약 및 제한
  • 28. MySQL 5.7 새로운 기능

20.4.1 Event Scheduler 개요

MySQL 이벤트는 스케줄에 따라 실행하는 작업입니다. 따라서 이들을 예약 된 이벤트이라고 부를 수 있습니다. 이벤트를 만들 때 특정 시간에 시작하고 종료하고 하나 이상의 정기적 인 간격으로 실행되는 하나 이상의 SQL 문을 포함하는 명명 된 데이터베이스 오브젝트를 작성합니다. 개념적으로, 이것은 Unix의 crontab ( "cron 작업"라고도합니다) 및 Windows 작업 스케줄러의 생각을 닮아 있습니다.

이런 종류의 예약 된 작업은 "시간 트리거 '로 불리는 경우도 있고, 이들이 시간의 경과에 의해 트리거되는 개체임을 보여줍니다. 이것은 기본적으로 정확하지만, 섹션 20.3 "트리거 사용" 에서 설명하고있는 종류의 트리거와 혼동하지 않도록 이벤트의 용어를 사용합니다. 더 정확하게 말하면, 이벤트는 '시간 트리거'와 혼동하지 않도록해야합니다. 트리거는 지정된 테이블에서 열리는 이벤트의 특정 유형에 따라 실행되는 문을 가진 데이터베이스 개체이지만 (예약 된) 이벤트는 지정된 시간 간격의 경과에 따라 실행되는 문 을 가진 객체입니다.

SQL 표준은 이벤트 일정에 대한 대응은 없지만 다른 데이터베이스 시스템에는 선례가 있고, 이러한 구현과 MySQL Server에서 볼 수있는 구현 사이에는 일정한 유사성이 인정됩니다.

MySQL 이벤트에는 다음과 같은 주요 기능 및 특성이 있습니다.

  • MySQL 5.6에서는 이벤트는 그 이름과 이벤트에 할당 된 스키마에 의해 고유하게 식별됩니다.

  • 이벤트는 일정에 따라 특정 작업을 수행합니다. 이 작업은 SQL 문으로 구성되며 필요에 따라 BEGIN ... END 블록 내의 복합 명령문 수 있습니다 ( 섹션 13.6 "MySQL 복합 문"부분 을 참조하십시오). 이벤트의 타이밍은 한 번만 또는 반복 중 하나입니다. 한 번만 이벤트는 한 번만 실행하지 않습니다. 반복 이벤트는 일정한 간격으로 작업을 반복 이벤트를 반복하는 일정에 특정 시작 시간과 종료 시간 모두 또는 한쪽을 할당하거나 모두 할당하지 않을 수 있습니다. (기본적으로 반복 이벤트의 일정은 만들어지면 바로 시작이 잘못되거나 삭제 될 때까지 계속됩니다.)

    반복 이벤트가 일정 간격 내에 종료하지 않으면 이벤트의 여러 인스턴스가 동시에 실행될 수 있습니다. 이것이 바람직하지 않은 경우는 동시 인스턴스를 방지 할 수있는 메커니즘을 마련하십시오. 예를 들어, GET_LOCK() 함수와 행 또는 테이블 잠금을 사용할 수 있습니다.

  • 사용자는 이러한 목적을위한 SQL 문을 사용하여 예약 된 이벤트를 작성, 수정 및 삭제할 수 있습니다. 구문이 잘못된 이벤트 생성 및 수정 문이 실패하고 대응하는 오류 메시지가 표시됩니다. 사용자는 실제로 자신이 보유하지 않은 권한을 필요로하는 문을 이벤트의 액션에 포함될 수 있습니다. 이벤트 작성 또는 수정 문은 성공하지만 이벤트의 액션은 실패합니다. 자세한 내용은 섹션 20.4.6 "이벤트 스케줄러와 MySQL 권한" 을 참조하십시오.

  • 이벤트 프로퍼티의 상당수는 SQL 문을 사용하여 설정 또는 변경할 수 있습니다. 이러한 특성은 이벤트의 이름, 타이밍, 지속성 (즉, 일정 기간이 만료 된 후에도 유지되는지 여부) 상태 (활성화 또는 비활성화), 수행 할 작업 및 할당 된 스키마 가 포함되어 있습니다. 섹션 13.1.2 "ALTER EVENT 구문" 을 참조하십시오.

    이벤트의 기본 정의는 이벤트가 변경되지 않은 경우, 이벤트를 생성 한 사용자이며, 변경되는 경우, 정의는 그 이벤트에 영향을 ALTER EVENT 문을 마지막으로 실행 한 사용자입니다 . 이벤트가 정의되어있는 데이터베이스에 대한 EVENT 권한을 보유하고있는 모든 사용자는 해당 이벤트를 변경할 수 있습니다. 섹션 20.4.6 "이벤트 스케줄러와 MySQL 권한" 을 참조하십시오.

  • 이벤트의 액션 문은 스토어드 루틴 내에서 허용되고있는 대부분의 SQL 문을 포함 할 수 있습니다. 제한 내용은 섹션 D.1 "저장 프로그램 제한 사항" 을 참조하십시오.


서울시 강남구 영동대로 602 6층
TEL: 02-6061-0006  /  E: csr@mysqlkorea.com
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved