1、 查看MySQL是否開啟了事件功能
查看命令:
show variables like '%sc%';
打開event_scheduler(臨時開啟,MySQL服務重啟后時效)
SET GLOBAL event_scheduler = ON;
永久開啟方法:my.cnf中[mysqld]添加event_scheduler=on #重啟服務
2、 創建事件
create event myevent on SCHEDULE every 5 second do delete from Syslog.SystemEvents where ReceivedAt<(CURRENT_TIMESTAMP() + INTERVAL -5 DAY);#刪除5天前的數據
說明:
ReceivedAt:數據庫Syslog.Systemevents表中的時間字段
(date,INTERVAL expr type):
date:數據庫當前時間CURRENT_TIMESTAMP()
INTERVAL:關鍵字(間隔)
expr:具體的時間間隔(-5)
type:時間單位:
| MICROSECOND |
間隔單位:毫秒 |
| SECOND |
間隔單位:秒 |
| MINUTE |
間隔單位:分鍾 |
| HOUR |
間隔單位:小時 |
| DAY |
間隔單位:天 |
| WEEK |
間隔單位:星期 |
| MONTH |
間隔單位:月 |
| QUARTER |
間隔單位:季度 |
| YEAR |
間隔單位:年 |
| SECOND_MICROSECOND |
復合型,間隔單位:秒、毫秒,expr可以用兩個值來分別指定秒和毫秒 |
| MINUTE_MICROSECOND |
復合型,間隔單位:分、毫秒 |
| MINUTE_SECOND |
復合型,間隔單位:分、秒 |
| HOUR_MICROSECOND |
復合型,間隔單位:小時、毫秒 |
| HOUR_SECOND |
復合型,間隔單位:小時、秒 |
| HOUR_MINUTE |
復合型,間隔單位:小時分 |
| DAY_MICROSECOND |
復合型,間隔單位:天、毫秒 |
| DAY_SECOND |
復合型,間隔單位:天、秒 |
| DAY_MINUTE |
復合型,間隔單位:天、分 |
| DAY_HOUR |
復合型,間隔單位:天、小時 |
| YEAR_MONTH |
復合型,間隔單位:年、月 |
如果存在事件,請先刪除,刪除命令:drop event if exists myevent;
3、 開啟事件
alter event myevent on completion preserve enable;
4、關閉事件的命令:alter event myevent on completion preserve disable;
