Mysql Purge Old Field

CREATE EVENT IF NOT EXISTS `dbName`.`eventName`
ON SCHEDULE
    EVERY 1 DAY 
COMMENT 'Description'
DO
    BEGIN
 
    DELETE FROM `dbName`.`TableName` WHERE `DateCol` < DATE_SUB(NOW(), INTERVAL 3 MONTH);
 
    END

이벤트

CREATE EVENT `event_name` 
ON SCHEDULE schedule
[ON COMPLETION [NOT] PRESERVE] 
[ENABLE | DISABLE | DISABLE ON SLAVE]
DO BEGIN
    -- event body
END;

mysql 주기적 자동 필드 정리

mysql 구문으로 아래와 같이 하면 매일 30일 이전 것은 지우는 방식이 가능하다.

출처 http://stackoverflow.com/questions/9472167/what-is-the-best-way-to-delete-old-rows-from-mysql-on-a-rolling-basis

CREATE EVENT AutoDeleteOld
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY 
ON COMPLETION PRESERVE
DO 
DELETE LOW_PRIORITY  FROM `co_chat` WHERE `time` < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 3 MONTH)) LIMIT 100000;
 
DELETE LOW_PRIORITY  FROM `co_block` WHERE `time` < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 3 MONTH)) LIMIT 100000;