mysql 定时计划任务 wish 按照id分组定时循环启动
SELECT count(*) FROM wish_sellers_in;
UPDATE wish_sellers_in SET act_status =0 WHERE id >=1 AND id <=70;
-- 查看事件
SHOW EVENTS;
-- 查看定时器状态
SHOW VARIABLES LIKE '%sched%';
-- 开启定时器
SET GLOBAL event_scheduler=1;
-- 查看
SHOW VARIABLES LIKE '%sched%';
-- 删除存储过程
DROP PROCEDURE IF EXISTS pro_update_seller_in_act_status;
DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE pro_update_seller_in_act_status(a INT ,b INT)
BEGIN
IF a=1 AND b=360 THEN
UPDATE wish_sellers_in SET act_status =1 WHERE id >=a AND id <=b;
END IF;
IF a=1 AND b=1500 THEN
UPDATE wish_sellers_in SET act_status =1 WHERE id >=a AND id <=b;
END IF;
IF a=1501 AND b=5000 THEN
UPDATE wish_sellers_in SET act_status =1 WHERE id >=a AND id <=b;
END IF;
IF a=5001 AND b=15000 THEN
UPDATE wish_sellers_in SET act_status =1 WHERE id >=a AND id <=b;
END IF;
IF a=15001 AND b=31542 THEN
UPDATE wish_sellers_in SET act_status =1 WHERE id >=a AND id <=b;
END IF;
IF a=51 AND b=60 THEN
UPDATE wish_sellers_in SET act_status =1 WHERE id >=a AND id <=b;
END IF;
IF a=61 AND b=70 THEN
UPDATE wish_sellers_in SET act_status =1 WHERE id >=a AND id <=b;
END IF;
END $$
DELIMITER ;
-- 删除计划任务
/*
DROP EVENT IF EXISTS event_update_sellers_in_act_status_id1;
CREATE EVENT event_update_sellers_in_act_status_id1
ON SCHEDULE
EVERY 5 DAY STARTS '2016-07-28 00:30:00'
ON COMPLETION PRESERVE
DO CALL pro_update_seller_in_act_status(1,10);
*/
DROP EVENT IF EXISTS event_update_sellers_in_act_status_id21;
CREATE EVENT event_update_sellers_in_act_status_id21
ON SCHEDULE
EVERY 5 DAY STARTS '2016-07-29 00:30:00'
ON COMPLETION PRESERVE
DO CALL pro_update_seller_in_act_status(5001,15000);
DROP EVENT IF EXISTS event_update_sellers_in_act_status_id31;
CREATE EVENT event_update_sellers_in_act_status_id31
ON SCHEDULE
EVERY 5 DAY STARTS '2016-07-30 00:30:00'
ON COMPLETION PRESERVE
DO CALL pro_update_seller_in_act_status(15001,31542);
DROP EVENT IF EXISTS event_update_sellers_in_act_status_id41;
CREATE EVENT event_update_sellers_in_act_status_id41
ON SCHEDULE
EVERY 5 DAY STARTS '2016-07-31 00:30:00'
ON COMPLETION PRESERVE
DO CALL pro_update_seller_in_act_status(1,360);
DROP EVENT IF EXISTS event_update_sellers_in_act_status_id51;
CREATE EVENT event_update_sellers_in_act_status_id51
ON SCHEDULE
EVERY 5 DAY STARTS '2016-08-01 00:30:00'
ON COMPLETION PRESERVE
DO CALL pro_update_seller_in_act_status(1,1500);
DROP EVENT IF EXISTS event_update_sellers_in_act_status_id61;
CREATE EVENT event_update_sellers_in_act_status_id61
ON SCHEDULE
EVERY 5 DAY STARTS '2016-08-02 00:30:00'
ON COMPLETION PRESERVE
DO CALL pro_update_seller_in_act_status(1501,5000);
/*
DROP EVENT IF EXISTS event_update_sellers_in_act_status_id71;
CREATE EVENT event_update_sellers_in_act_status_id71
ON SCHEDULE
EVERY 7 DAY STARTS '2016-08-03 00:30:00'
ON COMPLETION PRESERVE
DO CALL pro_update_seller_in_act_status(61,70);
*/
DROP EVENT IF EXISTS event_update_sellers_in_act_status_;
CREATE EVENT event_update_sellers_in_act_status_
ON SCHEDULE
EVERY 1 DAY STARTS '2016-07-28 12:37:00'
ON COMPLETION PRESERVE
DO CALL pro_update_seller_in_act_status(61,70);
-- 开启事件
ALTER EVENT event_update_sellers_in_act_status ON
COMPLETION PRESERVE ENABLE;
-- 查看存储过程状态
SHOW PROCEDURE STATUS;
-- 查看创建存储过程语句
SHOW CREATE PROCEDURE pro_update_seller_in_act_status;
-- 查看事件创建过程语句
show create event [event_update_sellers_in_act_status_id21];
-- 关闭事件
ALTER EVENT event_update_sellers_in_act_status ON
COMPLETION PRESERVE DISABLE;
-- 关闭 定时器
SET GLOBAL event_scheduler=0;
-- 查看定时器状态
SHOW VARIABLES LIKE '%sched%';
-- 删除事件
DROP EVENT [IF EXISTS] event_update_sellers_in_act_status;
修改事件(ALTER EVENT)
ALTER EVENT event_name
[ON SCHEDULE schedule]
[RENAME TO new_event_name]
[ON COMPLETION [NOT] PRESERVE]
[COMMENT 'comment']
[ENABLE | DISABLE]
[DO sql_statement]
创建表 CREATE TABLE test(endtime DATETIME);
创建存储过程test
DROP PROCEDURE IF EXISTS test;
CREATE PROCEDURE test ()
BEGIN
/*update examinfo SET endtime = now() WHERE id = 14; */
INSERT INTO test(endtime) VALUE (NOW());
END ;
创建event e_test
DROP EVENT IF EXISTS e_test;
CREATE EVENT if not exists e_test
on schedule every 3 second
on completion preserve
do call test();
每隔30秒将执行存储过程test,将当前时间更新到examinfo表中id=14的记录的endtime字段中去
-----AT '2007-09-01 12:00:00' + INTERVAL 1 DAY --只执行一次at
4.event的时间设置
设置event很简单,但是麻烦的是如何设置执行的时间,网上找了一些,自己总结了一下。
先看语句,如下面这个
CREATE EVENT test_event ON SCHEDULE EVERY 1 DAY STARTS '2012-09-24 00:00:00'
ON COMPLETION PRESERVE ENABLE DO CALL test_procedure();
EVERY 后面的是时间间隔,可以选 1 second,3 minute,5 hour,9 day,1 month,1 quarter(季度),1 year
从2013年1月13号0点开始,每天运行一次
ON SCHEDULE EVERY 1 DAY STARTS '2013-01-13 00:00:00'
从现在开始每隔九天定时执行
ON SCHEDULE EVERY 9 DAY STARTS NOW() ;
每个月的一号凌晨1 点执行
on schedule every 1 month starts date_add(date_add(date_sub(curdate(),interval day(curdate())-1 day),interval 1 month),interval 1 hour);
每个季度一号的凌晨1点执行
on schedule every 1 quarter starts date_add(date_add(date(concat(year(curdate()),'-',elt(quarter(curdate()),1,4,7,10),'-',1)),interval 1 quarter),interval 1 hour);
每年1月1号凌晨1点执行
on schedule every 1 quarter starts date_add(date_add(date(concat(year(curdate()),'-',elt(quarter(curdate()),1,4,7,10),'-',1)),interval 1 quarter),interval 1 hour);
mysql 定时计划任务 wish 按照id分组定时循环启动的更多相关文章
- mysql‘事件计划已关闭。事件只能在服务器启动并开启事件计划时才能处理。'的警告
通过下列语句查询event是否开启 show variables like '%sche%'; 通过执行下列语句,来开启event_schedulerset global event_schedule ...
- Oracle定时计划快速使用
Oracle定时计划快速使用 前言: SQL Server中有相关的定时计划,可以直接打开sql server 的任务管理器进行配置,可以方便.快速实现定时执行相应任务.相应的Oracle也有对应的定 ...
- Linux定时计划(crontab)使用说明
一.设置定时计划步骤 第一步,编缉计划文件:crontab -e 第二步,在文件中写入计划,格式如:minute hour day month week command.如0 8 * * * sh / ...
- MySQL架构优化:定时计划任务与表分区
转自: MySQL架构优化实战系列3:定时计划任务与表分区 - 今日头条(TouTiao.com)http://toutiao.com/a6304736482361049345/?tt_from=mo ...
- MySQL架构优化实战系列3:定时计划任务与表分区
原创 2016-07-08 汤抗 DBAplus社群 一 定时计划任务 1.概论 mysql计划任务可以定时更新数据库表或者做大文件的汇总表. 2.配置 开启计划任务 SHOW VARIABL ...
- navicat for mysql 在win7下设置定时计划之导出数据处理
navicat for mysql 在win7下设置定时计划之导出数据处理 博客分类: mysql navitcatmysql定时任务导出 前两篇记录了,navicat for mysql计划的入门 ...
- MySQL执行计划解读
Explain语法 EXPLAIN SELECT …… 变体: 1. EXPLAIN EXTENDED SELECT …… 将执行计划“反编译”成SELECT语句,运行SHOW WARNINGS 可得 ...
- mysql执行计划
烂sql不仅直接影响sql的响应时间,更影响db的性能,导致其它正常的sql响应时间变长.如何写好sql,学会看执行计划至关重要.下面我简单讲讲mysql的执行计划,只列出了一些常见的情况, ...
- 如何查看MySQL执行计划
在介绍怎么查看MySQL执行计划前,我们先来看个后面会提到的名词解释: 覆盖索引: MySQL可以利用索引返回select列表中的字段,而不必根据索引再次读取数据文件 包含所有满足查询需要的数据的索引 ...
随机推荐
- 深度系统 deepin 15.9 关闭桌面
深度系统 deepin 15.9 关闭桌面 由于特别的原因,关闭深度的桌面. sudo systemctl disable lightdm 如果需要在命令模式进入桌面可以使用以下命令. sudo se ...
- day01知识点
1.计算机基础 2.Python的历史 3.编码语言分类 Python是一门动态解释性的强制类型定义语言 4.Python的解释器种类 5.变量 法律规则:字母,数字,下划线(数字不能 ...
- GitHub Pages:静态站点托管服务(待补充)
不管是 react 还是 vue 项目路由都必须使用 hash 方式,否则页面打不开,切记!!! 如果使用的是 vue-cli 3 创建项目,那么你要在根目录创建 vue.config.js 文件,并 ...
- [IDEA]IDEA设置注释模板
IDEA的注释模板有类注释模板和方法注释模板两种,下面分别介绍: 一.类注释模板 菜单路径:File->Settings->Editor->File and Code Templat ...
- CRC16 的生成及校验原理
参考:https://blog.csdn.net/niepangu/article/details/45499383 计算CRC的过程,就是用一个特殊的“除法”,来得到余数,这个余数就是CRC. 它不 ...
- MS SQL 数据库所在C盘变得很大解决办法
C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG 一般是这个文件夹里的ERRORLOG变得很大.所以要清理. 执行一次EXEC sp_cy ...
- logback.xml例子
我项目中一直使用这样的模板,留档,并纪念. <?xml version="1.0" encoding="UTF-8"?> <configura ...
- windows环境 springboot+docker开发环境搭建与hello word
1,下载安装 docker toolbox 下载地址:http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/ docker t ...
- REST API TO MiniProgram 上线WordPress官方插件库
全新开发的用于 wordpress微信小程序的插件 REST API TO MiniProgram今天上线WordPress官方插件库.这个插件的上一个版本叫:wp-rest-api-for-app, ...
- Odoo二次开发
Odoo 点击进入