加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL创建定时任务的方法是啥

发布时间:2023-04-01 13:14:03 所属栏目:MySql教程 来源:
导读:今天小编给大家分享一下MySQL创建定时任务的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来

今天小编给大家分享一下MySQL创建定时任务的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

常用的一定要写在前面

# 从2019-10-11开始,每天的00:30:00执行定时任务

ON SCHEDULE EVERY 1 DAY STARTS '2019-10-11 00:30:00'  

# 每天的凌晨1点执行定时任务

ON SCHEDULE EVERY 1 DAY STARTS DATE_ADD(DATE_ADD(CURDATE(), INTERVAL 1 DAY), INTERVAL 1 HOUR)

# 特定的日期特定的时间点执行定时任务

ON SCHEDULE at '2019-10-10 19:14:10'

# 每五分钟执行一次定时任务

ON SCHEDULE EVERY 5 MINUTE STARTS CURDATE() 

# 每小时执行一次定时任务

ON SCHEDULE EVERY 1 HOUR STARTS CURDATE()

下面开始进入正文!!!

就像增删改查需要权限一样,建立定时任务也需要权限!

一、查看定时策略是否开启

show variables like '%event_sche%';

如果显示为

ON:表示已开启,下面这些就不用做了,直接进入【二、创建定时任务】

OFF:表示没有开启!

set global event_scheduler=1;-- 开启定时

执行完这一句,如果显示access denied;

表示你没有开启定时任务的权限,联系运维给你开通权限,或者让他执行一下上面这个语句。

执行完之后再执行一下show variables like '%event_sche%';确保已开启。

二、创建定时任务

以下语句也是在新建查询窗口运行

方法1:直接创建定时任务事件

DELIMITER //

CREATE EVENT test_event 

on schedule at '2019-10-10 19:27:10' #规定在这个时间点执行下面的语句

DO

BEGIN

DROP TABLE IF EXISTS test_ee;

/************************************************************************/

CREATE table test_ee AS SELECT NOW()

;

END;

//

方法2:先创建存储过程,再定义执行周期

-- 创建存储过程test

CREATE PROCEDURE test_d2 ()

BEGIN

 

DROP TABLE IF EXISTS test_ddd;

/*************************************/

CREATE table test_ddd AS SELECT NOW()

;

END;

CREATE EVENT IF NOT EXISTS temp_event   

    on schedule at '2019-10-10 19:14:10'

    ON COMPLETION PRESERVE -- ENABLE   

do call test_d2();

以上就是“MySQL创建定时任务的方法是什么”这篇文章的所有内容,感谢各位的阅读!

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!