MySQL定时任务

本篇文章简单介绍如何在MySQL中新建定时任务

新建定时任务主要分为以下几步:

修改MySQL配置

首先需要打开新建存储过程事件的权限:

赋予用户创建、删改以及执行存储过程的权限

GRANT CREATE ROUTINE ON `user`.* TO 'username'@'%';
GRANT ALTER  ROUTINE ON `user`.* TO 'username'@'%';
GRANT execute        ON `user`.* TO 'username'@'%';

打开创建事件的配置:

SET GLOBAL event_scheduler = 1

新建存储过程

新建存储过程,这里peter为数据库用户名,procedure_example为存储过程名称

DELIMITER $$

CREATE
    /*[DEFINER = { user | CURRENT_USER }]*/
    PROCEDURE `peter`.`procedure_example`()
    /*LANGUAGE SQL
    | [NOT] DETERMINISTIC
    | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
    | SQL SECURITY { DEFINER | INVOKER }
    | COMMENT 'string'*/
    BEGIN
        select 'Hello, guys'
    END$$

DELIMITER ;

新建事件

时间配置为从2018-05-22 03:00:00开始,每天执行一次,也就是每天凌晨3点执行的意思

DELIMITER $$

-- SET GLOBAL event_scheduler = ON$$     -- required for event to execute but not create    

CREATE  /*[DEFINER = { user | CURRENT_USER }]*/ EVENT `datacenter`.`abc`

ON SCHEDULE EVERY 1 DAY STARTS '2018-05-22 03:00:00' 
ON COMPLETION PRESERVE ENABLE
DO
CALL procedure_example();
DELIMITER ;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

廖某

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值