mysql中定时任务的用法( 二 )

在当前1分钟后开始,在当前2分钟后结束 。所以,只会执行1分钟 。

mysql中定时任务的用法

文章插图
 
3.2.6 每天的定时执行CREATE EVENT e_test_insert_dayON SCHEDULE EVERY 1 DAYSTARTS DATE_ADD(DATE_ADD(CURDATE(), INTERVAL 1 DAY), INTERVAL 1 HOUR)DO insert INTO test_table (create_time) VALUES (current_timestamp);每天1点执行一次 。DATE_ADD是MySQL得内置函数,对某个时间加上指定时间 。
3.2.7 每个月的29号0点30分执行一次CREATE EVENT e_test_insert_monthON SCHEDULE EVERY 1 MONTHSTARTS DATE_ADD(DATE_ADD('2020-04-29', INTERVAL 1 MONTH), INTERVAL 30 MINUTE)DO insert INTO test_table (create_time) VALUES (current_timestamp);3.2.8 每小时的30分时执行一次CREATE EVENT e_test_insert_hourON SCHEDULE EVERY 1 HOURSTARTS DATE_ADD('2020-05-28 13:30:00', INTERVAL 1 HOUR)DO insert INTO test_table (create_time) VALUES (current_timestamp);4,删除事件语法:
DROP EVENT [IF EXISTS] event_name如果事件不存在,会报错 。所以执行时,最好加上IF EXISTS
5, 修改事件语法:
ALTER EVENT event_name[ON SCHEDULE schedule][RENAME TO new_event_name][ON COMPLETION [NOT] PRESERVE][COMMENT ``'comment'``][ENABLE | DISABLE][DO sql_statement]5.1 临时关闭事件ALTER EVENT e_test DISABLE;5.2 开启事件ALTER EVENT e_test ENABLE;5.3 将每天清空test表改为5天清空一次:ALTER EVENT e_test ON SCHEDULE EVERY 5 DAY;



推荐阅读