Mysql 简单的使用定时器调用存储过程
1.创建测试的表
CREATE TABLE mytable (
id INT auto_increment NOT NULL,
NAME VARCHAR (100) NOT NULL DEFAULT '',
introduce text NOT NULL,
createtime TIMESTAMP NOT NULL,
CONSTRAINT pk_mytable PRIMARY KEY (id)
) ;
2.创建存储过程,这里的存储过程主要提供给mysql的定时器event来调用去执行:
简单例子
create procedure mypro()
BEGIN
#需要执行的代码
insert into mytable (name,introduce,createtime) values ('1111','inner mongolia',now());
end;
3.创建mysql的定时器event:
简单例子
create event if not exists eventJob
on schedule every 1 second (调用的时间周期参数)
on completion PRESERVE
do call mypro();
4.mysql要想利用定时器必须的做准备工作,就是把mysql的定时器给开启了:
SET GLOBAL event_scheduler = 1; -- 启动定时器
SET GLOBAL event_scheduler = 0; -- 停止定时器
5.把刚刚创建的事件开启:
ALTER EVENT eventJob ON COMPLETION PRESERVE ENABLE; -- 开启事件
ALTER EVENT eventJob ON COMPLETION PRESERVE DISABLE; -- 关闭事件
6.查看创建事件的状态:
SELECT * FROM mysql.event WHERE mysql.event.name LIKE '%事件名称%'
本文参考: https://www.cnblogs.com/Cayenne/p/6924694.html