有个数据库插入任务,需要每个月执行一次。用mysql的定时器来实现。
set time_zone = '+8:00';
SHOW VARIABLES LIKE 'event_scheduler';##查看是否开启了event定时器功能
set GLOBAL event_scheduler = 1; //开启
select NOW();
在查询下执行
DROP EVENT IF EXISTS `event_minute`;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` EVENT `event_minute` ON SCHEDULE EVERY 1 MINUTE STARTS '2017-11-28 15:26:00'
ON COMPLETION PRESERVE #当这个事件不会再发生的时候不会被Drop掉
ENABLE DO
BEGIN
INSERT INTO `user`(name, address,addtime) VALUES('test1','test1',now());
INSERT INTO `user`(name, address,addtime) VALUES('test2','test2',now());
END
;;
DELIMITER ;
ALTER EVENT event_minute DISABLE;
select * from mysql.event ;
执行完毕后,在时间中,就能看到正价了一个事件名为event_minute的事件。
其他比较重要的操作语句
###关闭\打开定时器 ALTER EVENT event_minute DISABLE; ALTER EVENT event_minute ENABLE; ###查询定时器状态 select * from mysql.event ;
参考:https://www.cnblogs.com/xuzhengzong/p/7910430.html