• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MySQL定时执行脚本(计划任务)命令实例_MySQL

mysql 搞代码 4年前 (2022-01-09) 14次浏览 已收录 0个评论

gaodaima.com

查看event是否开启


show variables like ‘%sche%’;

将事件计划开启

set global event_scheduler =1;

创建存储过程test


CREATE PROCEDURE test ()
BEGIN
update examinfo SET endtime = now() WHERE id = 14;
END;

创建event e_test


create event if not exists e_test
on schedule every 30 second
on completion preserve
do call test();

每隔30秒将执行存储过程test,将当前时间更新到examin本文来源gao@!dai!ma.com搞$$代^@码!网!fo表中id=14的记录的endtime字段中去.

关闭事件任务


alter event e_test ON
COMPLETION PRESERVE DISABLE;

开户事件任务


alter event e_test ON
COMPLETION PRESERVE ENABLE;

以上测试均成功,测试环境为mysql 5.4.2-beta-community mysql community server(GPL)

以上的相关内容就是对MySQL定时执行的介绍,望你能有所收获。

mysql 计划任务重启后消失

我们只要修改一配置即可

event_scheduler在mysql的config中设置为OFF有关。去mysql中将配置改为ON则就搞定了。

更详细的大家可以往下看

MySQL5.1.x版本中引入了一项新特性EVENT,顾名思义就是事件、定时任务机制,在指定的时间单元内执行特定的任务,因此今后一些对数据定时性操作不再依赖外部程序,而直接使用数据库本身提供的功能。

要查看当前是否已开启事件调度器,可执行如下SQL:

SHOW VARIABLES LIKE ‘event_scheduler’;

SELECT @@event_scheduler;

SHOW PROCESSLIST;
若显示:

+—————–+——-+
| Variable_name | Value |
+—————–+——-+
| event_scheduler | OFF |
+—————–+——-+
则可执行

SET GLOBAL event_scheduler = 1;

SET GLOBAL event_scheduler = ON;
来开启,也可以直接在启动命令加上“


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:MySQL定时执行脚本(计划任务)命令实例_MySQL
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址