博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql定时任务
阅读量:5127 次
发布时间:2019-06-13

本文共 1965 字,大约阅读时间需要 6 分钟。

1. 查看是否开启定时策略

show variables like '%event_sche%';

若出现如下图,则此时是关闭状态

e6a757b0-6a62-41ac-a1bf-eb88d5be6a2e.png

开启定时策略(重启无效)

set global event_scheduler =1;

则需要在配置文件my.ini的设置(重启有效)

[mysqld]event_scheduler=ON //这一行加入mysqld标签下

2. 创建存储过程

什么是存储过程

原生词为Procedure,实际上它的含义就是相当于我们面向对象里的方法或者说是函数,在它里面可以完成多个sql语句的操作,并且可以定义参数传值等,与一般的单条sql语句的区别主要在这里。

创建存储过程
mysql> delimiter //mysql> create procedure test_proce()     > begin     > insert into weuse(name,created_at,updated_at) values('hello',now(),now());    > end//mysql> delimiter ;

说明

delimiter // 这个是将mysql中以;(分号)结尾的规定修改为以//(双斜杠)为语句结束符,因为存储过程里可以有多条sql 语句,里面的sql语句都以;号结尾。

下面的是一起输入的,可以知道分别是创建存储过程test_proce(),名称可以随便起的,然后是在begin –end之间是定义一系列sql语句的就可以了,记住最后end结尾要以之前修改后的结尾符结束。

3. 创建定时任务

create event second_eventon schedule every 1 secondon completion preserve disabledo call test_proce();

上面为整体代码,敲完再写分号

第一行create event day_event是创建名为second_event的事件,注意此处没有括号
第二行是创建周期定时的规则,本处的意思是每秒钟执行一次
第三行on completion preserve disable是表示创建后并不开始生效。
第四行do call test_proce()是该event(事件)的操作内容,表示调用我们刚刚创建的test_proce()存储过程。

定时规则

周期执行–关键字 EVERY

单位有:second,minute,hour,day,week(周),quarter(季度),month,year,

on schedule every 1 second //每秒执行1次on schedule every 2 minute //每两分钟执行1次on schedule every 3 day //每3天执行1次

在具体某个时间执行–关键字 AT,如:

on schedule at current_timestamp()+interval 5 day //5天后执行on schedule at current_timestamp()+interval 10 minute //10分钟后执行on schedule at '2016-10-01 21:50:00' //在2016年10月1日,晚上9点50执行

在某个时间段执行–关键字STARTS ENDS,如:

on schedule every 1 day starts current_timestamp()+interval 5 day ends current_timestamp()+interval 1 month //5天后开始每天都执行执行到下个月底on schedule every 1 day ends current_timestamp()+interval 5 day //从现在起每天执行,执行5天

4. 查看定时任务event(事件)

SELECT event_name,event_definition,interval_value,interval_field,status FROM information_schema.EVENTS;

5. 开启定时任务

alter event second_event on completion preserve enable;//开启定时任务alter event second_event on completion preserve disable;//关闭定时任务

6. 删除定时任务(Event)

drop event event_name;

转载于:https://www.cnblogs.com/phtjzzj/p/7993834.html

你可能感兴趣的文章
windows下的文件管理工具--total commander
查看>>
四元数
查看>>
功率谱密度如何理解
查看>>
git clean解决 GIT error: The following untracked working tree files would be overwritten
查看>>
windows下的计算时间间隔 -- GetTickCount()
查看>>
Excel在数据表中悬停鼠标显示数据值
查看>>
UML类图知识
查看>>
香农的伟大论文《A Symbolic Analysis of Relay and Switching Circuits》
查看>>
OpenMark
查看>>
c++11 enum class用法
查看>>
excel中怎么将行转换为列及列转换成行
查看>>
git 版本(commit) 回退
查看>>
c++ 数值计算库Eigen
查看>>
CodeMeter 软件加密技术
查看>>
git 版本库之间的依赖
查看>>
python全栈开发中级班全程笔记(第三模块、第一章(多态、封装、反射、内置方法、元类、作业))...
查看>>
react-01
查看>>
sublime插件安装
查看>>
SetForegroundWindow
查看>>
数据库存储系统应用,超市小票系统
查看>>