SHOW VARIABLES LIKE '%event_scheduler%'; -- 查看是否开启定时器
SET GLOBAL event_scheduler = 1; -- 开启定时器 0:off 1:on
CREATE EVENT IF NOT EXISTS update_word_boss -- 每隔一分自动调用TEST_WORD()存储过程 MINUTE -- 分 ,-- SECOND 秒
ON SCHEDULE EVERY 1 MINUTE
ON COMPLETION PRESERVE
DO CALL TEST_WORD();
ALTER EVENT update_word_boss ON -- 开启事件
COMPLETION PRESERVE ENABLE;
ALTER EVENT update_word_boss ON -- 关闭事件
COMPLETION PRESERVE DISABLE;
DROP EVENT IF EXISTS update_word_boss ; -- 删除定时任务
方法2:
-- ----------------------------
-- Event structure for `event_minute`
-- ----------------------------DROP EVENT IFEXISTS `event_minute`;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` EVENT `event_minute` ON SCHEDULE EVERY 1 MINUTE STARTS '2016-01-17 14:49:43'ON COMPLETION NOT PRESERVE ENABLE DO
BEGIN
INSERTINTOUSER(name, address,addtime) VALUES('test1','test1',now());
INSERTINTOUSER(name, address,addtime) VALUES('test2','test2',now());
END
;;
DELIMITER ;
demo:
-- ----------------------------
-- Event structure for `update_word_boss`
-- ----------------------------
DROP EVENT IF EXISTS `activity_daliy_reset`;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` EVENT `activity_daliy_reset` ON SCHEDULE EVERY 1 MINUTE STARTS CONCAT(SUBSTR(FROM_UNIXTIME(UNIX_TIMESTAMP() + 60),1,17),"00") ON COMPLETION PRESERVE ENABLE DO
BEGIN
#DROP TABLE IF EXISTS t_activity_reset_daily;
CREATE TABLE IF NOT EXISTS `t_activity_reset_daily` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`event_name` varchar(255) DEFAULT '' NOT NULL,
`run_time` varchar(255) DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO t_activity_reset_daily(event_name,run_time)VALUES("activity_daliy_reset",NOW()) ON DUPLICATE KEY UPDATE run_time = NOW();
END
;;
DELIMITER ;
Mysql 创建定时任务
最新推荐文章于 2024-04-08 20:59:57 发布