1、查询mysql的事件计划是否开启:

SHOW VARIABLES LIKE 'event_scheduler';
OFF 关闭 ON 开启

2、开启事件计划

开启event_scheduler 的指令,下面任何一个命令都可以

SET GLOBAL event_scheduler = ON;

SET @@global.event_scheduler = ON;

SET GLOBAL event_scheduler = 1;

SET @@global.event_scheduler = 1;

3、关闭事件计划

关闭事件计划的指令,,下面任何一个命令都可以

SET GLOBAL event_scheduler = OFF;

SET @@global.event_scheduler = OFF;

SET GLOBAL event_scheduler = 0;

SET @@global.event_scheduler = 0;

以上的任务只是临时生效,重启就会恢复之前状态,要想永久生效需要在配置文件中配置参数

4、永久设置 时间计划

要设置重启后可自动执行还需要修改mysql配置文件。

要在/etc/mysql/mysql.conf.d/mysqld.cnf或my.cfg中添加event_scheduler=ON

如果没有添加的话,mysql重启事件又会回到原来的状态了。

event_scheduler = 1 #表示开启事件

event_scheduler = 0 #表示关闭事件 MySQL8.0版本event_scheduler默认是1。

Mysql重启即可

5、此时需要看一下计划事件的状态

show events

 状态为:ENABLED 表示可以执行,如果为:DISABLE ,则不能执行

把:DISABLE 改为 ENABLED 方法为: 在时间的 【定义】标签,内进行修改。



 

6、看事件是否执行,看一下下面的上次执行时间



 如果为 na/null 则没有执行

按照1-5 步骤进行设置,就可以正常执行。


7、删除事件

DROP EVENT IF EXISTS 事件名;


8、开启关闭某个事件

--开启事件
alter event 事件名 on completion preserve enable;
--关闭事件
alter event 事件名 on completion preserve disable;