MySQL定時任務刪除資料

2021-07-23 02:32:17 字數 1579 閱讀 5564

前提:表中有date(defualt current_timestamp)字段

基礎語句:

檢視定時事件執行緒是否開啟: show variables like '%event_scheduler%';

開啟定時事件執行緒:set global event_scheduler=1;

檢視已有的定時事件任務:show events;

需求1:每過5秒鐘刪除過期30分鐘的資料

mysql語句(先刪除原事件):

drop event if exists e_delete_wxauth;

create event e_delete_wxauth

on schedule

every 5 second

dodelete from weixin_auth where date < date_sub(current_timestamp,interval 30 minute);

需求2:每天0點刪除已過期30分鐘事件

mysql語句(先刪除原事件):

drop event if exists e_delete_wxauth;

create event e_delete_wxauth

on schedule

every 1 day starts '2000-01-01 00:00:00'

dodelete from weixin_auth where date < date_sub(current_timestamp,interval 30 minute);

(ps:starts只是從這時間起執行緒開始執行,比如說現在時間是2016-09-20 12:30:15執行此sql語句,要等2016-09-21 00:00:00才開始生效)

需求3:每天3點更新金幣排行榜

delimiter | 

create event `e_updata_rank_share_gold`

on schedule

every 1 day starts '2000-01-01 03:00:00'

dobegin

delete from rank_gold;

insert into rank_gold select `user_id`,`username`,`img`,sum(gold_num) as gold from `gold_log` left join user on user.id=user_id where gold_type=3 group by user_id order by gold desc limit 0,15;

end |

delimiter ;

週期:

year | quarter | month | day | hour | minute |

week | second | year_month | day_hour | day_minute |

day_second | hour_minute | hour_second | minute_second

文獻參考:

本文出處:

csdn部落格位址

mysql定時刪除資料

mysql show variables like scheduler variable name value event scheduler off 1row inset 臨時開啟 setglobal event scheduler on 永久開啟,my.cnf中 mysqld 新增,並重啟服務 ...

mysql 定時任務 生效 mysql定時任務

1.檢視是否開啟定時策略 show variables like event sche 若出現如下圖,則此時是關閉狀態 開啟定時策略 重啟無效 set global event scheduler 1 則需要在配置檔案my.ini的設定 重啟有效 mysqld event scheduler on ...

mysql 定時任務

檢視event是否開啟 複製 如下 show variables like sche 將事件計畫開啟 複製 如下 set global event scheduler 1 建立儲存過程test 複製 如下 create procedure test begin update examinfo set...