餐饮行业做网站有什么好处知乎,网页制作基础教程书籍,做淘宝客需要网站吗,wordpress微博登陆插件MySQL 定时器EVENT学习 MySQL从5.1开始支持event功能#xff0c;类似oracle的job功能。有了这个功能之后我们就可以让MySQL自动的执行数据汇总等功能#xff0c;不用像以前需要操作的支持了。如linux crontab功能 。 创建测试表CREATE TABLE t( v VARCHAR(100) NOT NULL…MySQL 定时器EVENT学习 MySQL从5.1开始支持event功能类似oracle的job功能。有了这个功能之后我们就可以让MySQL自动的执行数据汇总等功能不用像以前需要操作的支持了。如linux crontab功能 。 创建测试表CREATE TABLE t( v VARCHAR(100) NOT NULL) ENGINE INNODB DEFAULT CHARSETutf8; 创建定时器 调用的存储过程DELIMITER $$DROP PROCEDURE IF EXISTS e_test $$CREATE PROCEDURE e_test() BEGIN INSERT INTO t VALUES(1); END $$ DELIMITER ;要使定时起作用 MySQL的常量GLOBAL event_scheduler必须为on或者是1 -- 查看是否开启定时器SHOW VARIABLES LIKE %sche%; -- 开启定时器 0off 1onSET GLOBAL event_scheduler 1; -- 创建事件--每隔一秒自动调用e_test()存储过程CREATE EVENT IF NOT EXISTS event_testON SCHEDULE EVERY 1 SECONDON COMPLETION PRESERVE DO CALL e_test();-- 开启事件ALTER EVENT event_test ON COMPLETION PRESERVE ENABLE; -- 关闭事件ALTER EVENT event_test ON COMPLETION PRESERVE DISABLE; SELECT * FROM t; 一些例子 1 从现在开始每隔九天定时执行 2 CREATE EVENT EVENT1 3 4 ON SCHEDULE EVERY 9 DAY STARTS NOW() 5 ON COMPLETION PRESERVE ENABLE 6 DO 7 BEGIN 8 CALL TOTAL(); 9 END10 11 12 13 14 每个月的一号凌晨1 点执行15 CREATE EVENT EVENT2 16 17 ON SCHEDULE EVERY 1 MONTH STARTS DATE_ADD(DATE_ADD(DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY), INTERVAL 1 MONTH),INTERVAL 1 HOUR)18 ON COMPLETION PRESERVE ENABLE19 DO20 BEGIN21 CALL STAT();22 END23 24 25 26 每个季度一号的凌晨2点执行27 28 CREATE EVENT TOTAL_SEASON_EVENT29 30 ON SCHEDULE EVERY 1 QUARTER STARTS DATE_ADD(DATE_ADD(DATE( CONCAT(YEAR(CURDATE()),-,ELT(QUARTER(CURDATE()),1,4,7,10),-,1)),INTERVAL 1 QUARTER),INTERVAL 2 HOUR)31 ON COMPLETION PRESERVE ENABLE32 DO33 BEGIN34 CALL SEASON_STAT();35 END36 37 38 39 40 每年1月1号凌晨四点执行41 CREATE EVENT TOTAL_YEAR_EVENT42 43 ON SCHEDULE EVERY 1 YEAR STARTS DATE_ADD(DATE(CONCAT(YEAR(CURDATE()) 1,-,1,-,1)),INTERVAL 4 HOUR)44 ON COMPLETION PRESERVE ENABLE45 DO46 BEGIN47 CALL YEAR_STAT();48 END49 MySQL的event和Oralce的Job还是有点不同的这点让笔者比较困扰 在进行按月季年进行自动调用存储过程 时为了测试可以 把系统改为年的最后一天如2010-12-31 235955; 这个Oracle的Job就会把月季年存储过程执行一遍。但MySQL改了系统时间了Event也没有定时执行。不知道各位大虾有没有什么好办法可以解决这个问题。 转载于:https://www.cnblogs.com/tenny/archive/2011/03/30/2000062.html