MySQL定时任务配置

MySQL创建定时任务,定期执行存储过程。

启用定时

SET GLOBAL event_scheduler = ON;

SET GLOBAL event_scheduler = 1;

查看设置

SHOW VARIABLES LIKE 'event_scheduler';

SELECT @@event_scheduler;

定义任务

CREATE DEFINER=`root`@`%` PROCEDURE `SYNC_DEMO`()
BEGIN
insert into demo.table_1 select * from demo2.table_2
where status ='pending';
update demo2.table_2 set status ='processed' where status ='pending';
END

说明:示例定义了一个简单的数据同步任务。

新建定时

create event SYNC_DEMO
on schedule every 1 minute
do call NEWS_SYNC ();

说明:每分钟执行一次,第一行,定义名称,第二行,定义执行周期,第三行,定义执行的任务。

查看定时任务

SELECT 
  event_name,event_definition,interval_value,interval_field,status 
FROM 
  information_schema.EVENTS;