SQLyog如何创建数据库,详细教程,SQLyog如何创建数据库,你知道怎么操作吗?下面将详细介绍......
mysql如何设置定时任务
用一个小例子介绍mysql如何设置定时任务。
工具/原料
- mysql 5.7.18
- Win10
方法/步骤
打开Power Shell(或cmd),进入mysql后,先使用命令
show variables like "%event_sche%";
查看是否有开启event_scheduler,如图我是关闭的。
如果是关闭的,使用命令
set global event_scheduler=1;
打开event_scheduler,打开后再次查看,结果如图。
如果想关闭event_scheduler,则命令为
set global event_scheduler=0;
接着选择一个数据库,然后创建表sche_task来演示设置定时任务。
创建表的sql语句及表的结构如图。
接下来创建一个函数作为定时任务,该函数是向sche_task表中插入一条数据。
创建函数的sql语句如图。注意要用delimiter来限定结束符。
接着先使用命令
show events G
查看已有的事件,如图,我是没有创建过事件的。
查完后,定义一个事件,该事件每过10s调用一次函数fun_insert_task,即每过10s向sche_task中插入一条数据。创建事件的sql语句如图。
事件创建成功后,再次查看所有事件,可以看到,所有事件中多了刚刚创建的事件,并处于使用状态。
查看表sche_task中的数据,如图可以看到,从定时任务开启起,每过10s插入一条数据,说明定时任务设置成功。
如果想停止定时任务,可以使用命令(以停止insert_task为例)
alter event insert_task on completion preserve disable;
停止后查看事件,如图。
另外,开启事件的命令为(以开启insert_task为例)
alter event insert_task on completion preserve enable;
停止定时任务后,再次查看表sche_task中的数据,如图可以看到,表数据不再增加。
例子到这里就结束了,最后总结一下。
定时任务是通过设置事件来完成的(event是在mysql 5.1以上的版本才有),
使用事件前要先看有没开启event_scheduler,命令为
show variables like '%event_sche%';
开启event_scheduler的命令为
set global event_scheduler = 1;
关闭event_scheduler的命令为
set global event_scheduler = 0;
查看所有事件的命令为
show events G (G 带有格式化的效果,输出结果会好看些)
关闭事件的命令为
alter event 事件名 on completion preserve disable;
开启事件的命令为
alter event 事件名 on completion preserve enable;
删除事件的命令为
drop event事件名;
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
标签: MYSQL
相关文章
- 详细阅读
- 详细阅读
-
如何处理'mysql' 不是内部或外部命令的报错详细阅读
如何处理mysql 不是内部或外部命令的报错,今天安装myql-5.7.23,想要从命令行中连接myql,结果出现如图报错。下面来写下,这种报错的解决方式:......
2023-03-16 500 MYSQL