mysql定时任务

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_event
on schedule every 1 second
on completion preserve disable
do 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/428485.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 中jtable_java中使用JTable控件

JTable是java桌面软件设计的一个很有用的UI控件,是一个表格控件,完整位置是:javax.swing.JTable。以下是我的一些使用经验:添加行:不能直接向JTable插入行,需要借助JTable的tableModel,代码如下…

02使用常规步骤编译NanoPiM1Plus的Android4.4.2

02使用常规步骤编译NanoPiM1Plus的Android4.4.2 大文实验室/大文哥 壹捌陆捌零陆捌捌陆捌贰 21504965 AT qq.com 完成时间:2017/12/5 17:51 版本:V1.0 开发板:NanoPi M1 Plus/zh SDK:Android4.4.2 按照全志A33平台编译调通的功能&…

java 精灵线程_Java线程的状态分析

/*** 线程的状态分析*authoraa**/public classThreadState {public static void main(String[] args) throwsException {/*** 新建线程,线程为新建状态* jdk:至今尚未启动的线程的状态。* 如果不给线程设置名称,线程的名称将会是:…

【02】koala编译中文出错(已放弃不用)

http://koala-app.com/index-zh.html koala 下载地址。sass。中文编译出错:打开 Koala文件夹位置->rubygems->gems->sass->lib->sass->engine.rb。添加这句话。在所有的request XXXX 之后即可。复制添加Encoding.default_external Encoding.find…

java jlabel里面加button_在Java Swing中通过JLabel覆盖JButton?

是否可以在Swing中将Button叠加在Label上?例如,如果有一个带有图像的JLabel而没有文本,我想在我的JLabel上覆盖我的按钮.标签定义如下:myLabel new javax.swing.JLabel(new ImageIcon( myPicture ));如果没有,那么任何想法我怎么能意识到这一点,谢谢.编…

项目管理之码云和git

目录 学习链接 1 码云 1 第一步,注册 2 第二部,登录 2 创建项目 2 git管理 4 如何生成公钥 5 clone项目 5 提交项目 6 1.本地初始化一个项目 6 2.开始第一次上传你的项目 7 5.Git基本操作 8 学习链接 https://www.cnblogs.com/xiaoxiaoccaiya/p/7125136.…

java 传递脚本给c_java – JNI将参数传递给c的方法

我有一个c文件myCppTest.cpp,它有方法int myFunction(int argv, char **argc) {}和myClass.java中的Java本机方法public native int myFunction (int argv, char[][] argc);使用javah -jni myClass生成头文件后,我有头JNIEXPORT jint JNICALL Java_JPTokenizer_init(JNIEnv *, …

【例3-4】求后序遍历

【例3-4】求后序遍历 链接:http://ybt.ssoier.cn:8088/problem_show.php?pid1339时间限制: 1000 ms 内存限制: 65536 KB【题目描述】 输入一棵二叉树的先序和中序遍历序列,输出其后序遍历序列。 【输入】 共两行,第一行一个字符串&a…

java classpath bat_tomcat启动批处理——setclasspath.bat | 学步园

除了上面两个批处理,还有一个比较重要的脚本,即是setclasspath.bat,它主要负责寻找、检查JAVA_HOME和JRE_HOME两个变量。********************************************************************************************if ""%1&q…

验证 Swarm 数据持久性 - 每天5分钟玩转 Docker 容器技术(104)

上一节我们成功将 Rex-Ray Volume 挂载到了 Service。本节验证 Failover 时,数据不会丢失。 Scale Up 增加一个副本: docker service update --replicas 2 my_web 运行之前我们先推测一下,理想的结果应该是:swarm 在 swarm-worker…

SQL Server安全级别2的阶梯:身份验证

SQL Server安全级别2的阶梯:身份验证作者:Don Kiely,2014/06/18 该系列本文是“Stairway系列:SQL Server安全性的阶梯”的一部分 SQL Server提供了保护服务器和数据免受当今复杂攻击所需的一切。但是,在您有效使用这些…

java file 堵塞_单元测试最终在Java 6中阻塞

首先考虑使用IOUtils.closeQuietly(),它会将未经测试的代码(可能是重复代码)减少为:try {f new BufferedInputStream(new FileInputStream(source));f.read(buffer);} finally {IoUtils.closeQuietly(f);}现在变得艰难. “正确”的方法是将BufferedInputStream的创…

java jna调用dll文件_关于java jna调用dll的问题

public interface User32 extends StdCallLibrary{User32 INSTANCE (User32)Native.loadLibrary("User32",User32.class);//加载系统User32 DLL文件,也可以是C写的DLL文件int SendMessageA(int hwnd,int msg,int wparam,int lparam);int FindWindowA(Str…

【bzoj4444】[Scoi2015]国旗计划 倍增

题目描述 给出一个圈和若干段,问:对于所有的 $i$ ,选择第 $i$ 段的情况下,最少需要选择多少段(包括第 $i$ 段)能够覆盖整个圈?输入 第1行,包含2个正整数N,M,分别表示边防…

java multimap 序列化_C++ JSON库的使用

1. 如何使用?2. 常用方法2.1 创建json对象2.1.1 使用cin,cout输入输出流2.1.2 提供根据键直接生成键值对的方法2.1.3 json::array json::object2.1.4 几个区别2.2 序列化2.2.1 标准输出自动序列化2.2.2 使用dump()函数2.3 反序列化2.3.1 从标准输入反序列化2.3.2 通…

【Excle数据透透视表】如何删除数据透视表

选中区域A4:C17,在键盘上按DELETE键删除,结果提示:那么如何删除呢?解决方案选中整个数透视表,再删除具体操作:选中整个数据透视表→DELETE注意:删除之后,源数据不会受到影响转载于:https://www.…

java 启动redis服务器_docker启动redis并使用java连接

一、先查找镜像docker search redis二、拉取镜像docker pull redis三、等待拉取完毕四、查看拉去的镜像docker iamges五、运行redis连接1:https://blog.csdn.net/weixin_38956287/article/details/80423607连接2:http://www.runoob.com/docker/docker-in…

【算法学习】整体二分

我们开门见山,讲讲一道sb题: 给你一个数组,查这个数组的第x大元素。 排序?可以 二分?怎么做啊? 二分出一个mid,判断这个数组中有多少个数小于等于mid,如果个数大于等于x,…

mysql leave的作用_MySQL数据库中DELIMITER的作用

以下的文章主要是向大家描述的是MySQL数据库中delimiter的作用是什么?我们一般都认为这个命令和存储过程关系不大,到底是不是这样的呢?以下的文章将会给你相关的知识,望你会有所收获。下面是一个存储过程的实例:DELIMITER $$USE …

Fullpage参数说明

参数说明 $(document).ready(function() {$(#fullpage).fullpage({//Navigationmenu: false,//绑定菜单,设定的相关属性与anchors的值对应后,菜单可以控制滚动,默认为false。anchors:[firstPage, secondPage],//anchors定义锚链接&#xff0c…