본문 바로가기
etc

mariadb data retention

by kyeongseo.oh 2023. 7. 29.

mariadb 일정 기간이 지난 데이터를 자동으로 삭제한다.

 

1. 프로시저 생성 (`INTERVAL - 1 day`는 하루 지난 데이터를 삭제)

DELIMITER $$
CREATE PROCEDURE autoDel()
BEGIN
DELETE FROM nifilog WHERE FROM_UNIXTIME(bulletinTimestamp/1000) < DATE_ADD(NOW(), INTERVAL -1 day);
END $$
DELIMITER ;


2. 이벤트 스케줄러 생성

```

use nifi; // 이벤트 스케줄러를 생성할 database에 접속 후 생성해야함.

EVERY 1 MINUTE // 1분마다 체크   DAY로 변경 시 하루에 한번
 STARTS NOW() // 시작 시간 설정    2023-01-01 00:00:00로 변경 시 시작 시간을 지정 가능
```

use nifi;  // 이벤트 스케줄러를 생성할 database에 접속 후 생성해야함

CREATE EVENT autoDelEvent
ON SCHEDULE    
 EVERY 1 MINUTE       // 1분마다 체크   DAY로 변경 시 하루에 한번
 STARTS NOW()         // 시작 시간 설정    2023-01-01 00:00:00로 변경 시 시작 시간을 지정 가능
 DO    
 CALL autoDel();

 

 
3. 이벤트 생성 확인

SELECT * FROM information_schema.events;


4. 이벤트 스케줄러 활성화 여부 확인

show global variables like '%schedule%';

 

5. 이벤트 스케줄러 활성화

SET GLOBAL event_scheduler = ON; // 이벤트 스케줄러 활성화
SET @@global.event_scheduler = ON; // 이벤트 스케줄러 활성화

'etc' 카테고리의 다른 글

cloudera hue 설치 (rhel8)  (0) 2023.09.11
taskfile  (0) 2023.08.05
kubeflow  (0) 2023.01.18
centos playwright  (0) 2023.01.15
haproxy  (0) 2022.09.22

댓글