问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

mysql如何查看定时器有没有执行

发布网友 发布时间:2022-04-27 10:01

我来回答

2个回答

懂视网 时间:2022-04-30 07:55

mysql定时器既是mysql的事件,在实际开发中,我们有时候需要定时去执行一些操作,大部分人通过ScheduledExecutorService类去创建定时,这种如果遇到大数据的更新的时候,运行速度比较忙,这时候我们可以考虑使用mysql定时器去执行SQL脚本文件。

要使用mysql定时器。

首先必须启动调度器“event_scheduler”。

查看当前是否已开启事件计划(调度器)有3种方法:

1)     SHOW VARIABLES LIKE ‘event_scheduler‘;

2)     SELECT @@event_scheduler;

3)     SHOW PROCESSLIST;

开启事件计划(调度器)开关有4种方法:

1)     SET GLOBAL event_scheduler = 1;

2)     SET @@global.event_scheduler = 1;

3)     SET GLOBAL event_scheduler = ON;

4)     SET @@global.event_scheduler = ON;

其次是创建定时器事件,可以通过sql创建,也可以安装Navicat Premium(mysql客户端)创建。

1)通过sql创建定时器事件:

create event if not exists eventJob 
on schedule every 2 second STARTS ‘2015-07-14 00:00:00‘
on completion PRESERVE 

ENABLE
do call mypro();

上述sql脚本中“eventJob ”为定时器事件名称,“mypro”为mysql函数或者存储过程。sql脚本表示从 ‘2015-07-14 00:00:00‘开始,每2秒钟执行mypro()函数一次。当然也可以设置结束时间。

2) 通过客户端创建定时器事件:

技术分享

如图中所示,call关键字后是需要执行的函数或者存储过程;状态表示定时器事件的状态,是否启用,enable表示启用,disable表示不启用,可以手动设置也可以通过sql来进行设置; on completion设置为“PRESERVE”。

技术分享

“计划”中标签中,主要是设置定时器的频率和开始结束时间。AT表示,从当前mysql数据库时间开始(这个时间是从启动器启用开始,即当状态为“ENABLE”时),根据一定频率的执行;EVERY是自定义开始时间和结束时间;相对来书EVERY比较灵活,使用方便。

最后,当然是设置定时器事件的状态。

在上一步中,我们无论是sql创建还是客户端创建都可以设置状态,但是当我们没有设置状态或者说关闭定时器事件的时候,就需要执行sql

ALTER EVENT eventJob ON  COMPLETION PRESERVE ENABLE;   ---- 开启事件
ALTER EVENT eventJob ON  COMPLETION PRESERVE DISABLE;  ---- 关闭事件

版权声明:本文为博主原创文章,未经博主允许不得转载。

mysql定时器

标签:mysql定时器

热心网友 时间:2022-04-30 05:03

mysql如何查看定时器有没有执行
1.查看是否开启evevt与开启evevt。

1.1、MySQL evevt功能默认是关闭的,可以使用下面的语句来看evevt的状态,如果是OFF或者0,表示是关闭的。
show VARIABLES LIKE '%sche%';
1.2、开启evevt功能
SET GLOBAL event_scheler = 1;
2.创建定时器的过程
2.1、创建测试表test
drop table if exists test;
create table test
(
id int(11) not null auto_increment primary key,
time datetime not null
) engine=innodb default charset=utf8;
2.2、创建evevt要调用的存储过程test_proce
delimiter //
drop procere if exists test_proce//
create procere test_proce()
begin
insert into test(time) values(now());
end//
delimiter ;
2.3、开启evevt(要使定时起作用,MySQL的常量GLOBAL event_scheler必须为on或者是1)
执行show variables like 'event_scheler';查看evevt是否开启;
若没开启执行set global event_scheler='on';
2.4、创建事件test_event(其作用:每隔一秒自动调用test_proce()存储过程)
drop event if exists test_event;
create event test_event
on schele every 1 second
on completion preserve disable
do call test_proce();
2.5、开启事件test_event
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
猪肚炖汤的做法 我家的创维电视机最近无论连接DVD影碟机或者是连接有线电视网,电视机都... 小小新娘花的歌词是什么? 胶州小吃有什么 红橡华园的介绍 长沙市芙蓉区有哪些湾 长沙有哪些湖景小区 世界第一大洋--太平洋 太平洋有哪些方面占据世界第一 午夜惊魂2游戏安卓游戏官方下载 绝世丹神 主人公秦升 作者鲁力 为什么不更新了? 绝世丹神丹长老是谁 绝世丹神 作者鲁力结局为何如此仓促? 有哪部小说男主角叫秦风 小说绝世丹神写的怎么样 绝世丹神_by鲁力_txt全文免费阅读 绝世丹神by音目全本txt在线小说免费阅读 苹果手机显示无sim卡? 电脑重启时卡住怎么办 电脑重启的时候会死机 怎样能有女人味 怎么样才有女人味 女人到底怎么才能有女人味? 怎么有女人味 怎么才有女人味呢 我怎么才能有女人味? 怎么才有女人味啊? 关于交行信用卡还款 交行信用卡账单日自动购汇人民币扣款自动扣款是什么意思 交行的信用卡在国外取现、刷卡消费(美元)手续费和汇率怎么算? mysql 查看库里有哪些定时器任务 有一本小说主角叫秦天的玄幻小说主人公得到了九劫丹帝的记忆这本书叫什么 类似《重修之灭仙弑神》修真小说 政策性银行办理存贷款业务吗? mysql如何用定时任务查询前一天整个库的数据量并记录下来到另外一张表... 求推荐一本能听的玄幻小说像诛仙那样的书? navicate怎么在mysql的定时事务开启 国家三大政策性银行,怎么样才能向这3家银行,进行贷款呢? 绝世丹神的介绍 如何设定mysql数据库的定时任务 政策性银行的资产业务有哪两个 政策性银行贷款的项目概况 mysql中的定时任务可以一次执行2个吗?就是到某个时间点,它就执行一条... 关于mysql建立一个定时任务的资料,比如说定时每天凌晨2点执行一条my... 开启mysql定时任务,关闭过了求助时间的帖子 mysql中每隔一段时间自动执行一次sql语句 如何用navicat给mysql写定时任务 北京灵狐科技是干什么的 腾讯文档怎么变成离线文件 苏州灵狐信息科技有限公司怎么样?
  • 焦点

最新推荐

猜你喜欢

热门推荐