博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【MySQL】玩转定时器
阅读量:6407 次
发布时间:2019-06-23

本文共 1878 字,大约阅读时间需要 6 分钟。

1、前置条件,你需要将服务器和mysql的时间都设置成东八区,php.ini和my.cnf配置(参考上篇文章)

2、进入mysql客户端,推荐Navicat for mysql

3、首先查看是否开启了定时器的功能:

####调试MYSQL定时器 --时间设置正确情况下执行下面没影响 xzz1128 #####set time_zone = '+8:00';SHOW VARIABLES LIKE 'event_scheduler';##查看是否开启了event定时器功能set GLOBAL event_scheduler = 1; //开启select NOW();

4、提醒:虽然这里用set global event_scheduler = on语句开启了事件,但是每次重启电脑。或重启mysql服务后,会发现,事件自动关闭(event_scheduler=OFF),所以想让事件一直保持开启,最好修改配置文件,让mysql服务启动的时候开启时间,只需要在my.cnf配置文件的[mysqld]部分加上event_scheduler=ON 即可,如下:

5、首先、新建user表:

-- ------------------------------ Table structure for `user`-- ----------------------------DROP TABLE IF EXISTS `user`;CREATE TABLE `user` (  `id` bigint(20) NOT NULL AUTO_INCREMENT,  `name` varchar(200) NOT NULL,  `address` varchar(500) NOT NULL,  `addtime` datetime NOT NULL,  PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;

然后、新建事件,有两种事件类型,一个是间隔触发,另一个是特定事件触发。

6、下面代码中分别介绍了定时器执行持续性动作(每个时间点需要干的)一次性动作(只用一次,用完即甩)

 

#################  mysql持续性定时器 -xzz 1128 ##########################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 ;##################mysql一次性定时器#################################DROP EVENT IF EXISTS `event_at`;DELIMITER ;;CREATE DEFINER=`root`@`localhost` EVENT `event_at` ON SCHEDULE AT '2017-11-28 15:39:00' ON COMPLETION NOT PRESERVE #当这个事件不会再发生的时候会被Drop掉ENABLE DO BEGIN    INSERT INTO `user`(name, address,addtime) VALUES('AT','AT',now());END;;DELIMITER ;

 

7、其他比较重要的操作语句

###关闭\打开定时器ALTER EVENT event_minute DISABLE; ALTER EVENT event_minute ENABLE;###查询定时器状态select * from mysql.event ;

 

8、看看效果:

8、感谢:

@Author      

@HomePageUrl  

 

转载地址:http://rotea.baihongyu.com/

你可能感兴趣的文章
Git 仓库大扫除
查看>>
设计模式-单例模式
查看>>
es6基础0x014:WeakMap
查看>>
九种 “姿势” 让你彻底解决跨域问题
查看>>
php中mysqli 处理查询结果集总结
查看>>
你不知道的JavaScript运算符
查看>>
小程序开发注意事项
查看>>
ECMAScript7规范中的instanceof操作符
查看>>
Hadoop HDFS原理分析
查看>>
【webpack4】基本配置和入门api
查看>>
Mac使用ssh公钥登录Linux
查看>>
【366天】跃迁之路——程序员高效学习方法论探索系列(实验阶段124-2018.02.06)...
查看>>
POJ3070-Fibonacci(矩阵快速幂)
查看>>
[vue插件]基于vue2.x的电商图片放大镜插件
查看>>
标准的组件结构
查看>>
vue——一个页面实现音乐播放器
查看>>
SVG 扬帆起航
查看>>
NET Core-学习笔记(二)
查看>>
职业生涯上的点点滴滴
查看>>
Linux下添加新硬盘,分区及挂载
查看>>