mysql 정시 작업 의 실현 과 사용 방법 예시
my sql 5.1.6 이벤트 스케줄 러(Event Scheduler)를 추가 하여 정시 작업(정시 삭제 기록,정시 데이터 통계)을 하여 이전 시스템 의 계획 작업 을 대체 할 수 있 습 니 다.my sql 이벤트 스케줄 러 는 초당 하나의 작업 을 수행 할 수 있 습 니 다.
이벤트 스케줄 러 와 트리거 의 차이 점:이벤트 스케줄 러 는 특정한 시간 주기 에 따라 특정한 작업 을 수행 합 니 다.트리거 는 특정한 표 에 의 한 이벤트 에 의 해 작 동 됩 니 다.
1.오픈 여부 확인
> show variables like 'event_scheduler';
2.이벤트 스케줄 러 켜 기
set global event_scheduler = on;
이 설정 은 my sql 이 다시 시작 되면 자동 으로 닫 힙 니 다.계속 열 려 면 my.ini 에서 다음 과 같이 설정 해 야 합 니 다.
event_scheduler = on
3.이벤트 문법 만 들 기
CREATE EVENT [IF NOT EXISTS ] event_name
ON SCHEDULE schedule
[ ON COMPLETION [ NOT ] PRESERVE ]
[ ENABLE | DISABLE ]
[ COMMENT ' ' ]
DO SQL ;
schedule : AT TIMESTAMP [+ INTERVAL interval ] | EVERY interval [ STARTS TIMESTAMP ] [ ENDS TIMESTAMP ]
interval : quantity { YEAR | QUARTER | MONTH | DAY |
HOUR | MINUTE | WEEK | SECOND |
YEAR_MONTH | DAY_HOUR | DAY_MINUTE | DAY_SECOND |
HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND }
event_name:이벤트 이름,최대 길이 64 글자.schedule:실행 시간.
[ON COMPLETION[NOT]PRESERVE]:사건 을 재 활용 해 야 합 니까?
[ENABLE|DISABLE]:이벤트 가 열 리 거나 닫 힙 니 다.
4.종료 이벤트
ALTER EVENT event_name DISABLE;
5.이벤트 시작
ALTER EVENT event_name ENABLE;
6.이벤트 삭제
DROP EVENT [IF EXISTS ] event_name;
7.모든 이벤트 보기
SHOW EVENTS;
8.사건 의 예테스트 에 사용 할 간단 한 test 표를 만 듭 니 다.
CREATE TABLE `test` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT 'ID',
`now` datetime DEFAULT NULL COMMENT ' ',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
이벤트 유형 은 두 가지 가 있 습 니 다.하 나 는 간격 트리거 이 고 하 나 는 특정한 시간 에 트리거 됩 니 다.우 리 는 1 초 간격 으로 test 표 에 기록 을 삽입 합 니 다.
DROP EVENT IF EXISTS event_test;
CREATE EVENT event_test
ON SCHEDULE EVERY 1 SECOND STARTS '2017-08-22 11:57:00' ENDS '2017-08-22 12:00:00'
ON COMPLETION PRESERVE
ENABLE
COMMENT ' test '
DO INSERT INTO test VALUES(NULL, now());
우 리 는 test 표 에 기록 을 삽입 할 시간 을 지정 합 니 다.
DROP EVENT IF EXISTS event_test2;
CREATE EVENT event_test2
ON SCHEDULE AT '2017-08-22 12:01:00'
ON COMPLETION PRESERVE
ENABLE
COMMENT ' test '
DO INSERT INTO test VALUES(999999, now());
더 많은 MySQL 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 논문 에서 말 한 것 이 여러분 의 MySQL 데이터베이스 계획 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MySQL에서 JSON 인덱싱 - aarondfrancis사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 말하지만 완전히 정확하지는 않습니다. MySQL로 JSON 열을 인덱싱하는 것은 완전히 가능합니다! 사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.