第一步,修改root权限:
1.2.在另一个新窗口用root登录:
D:\software\MySQL_5.6.24\mysql_5.6.24_winx64\mysql-5.6.24-wi
nx64\bin>mysql -u root -p
Enter password:(空即可)
第2步,退出root用户(quit命令),然后用带密码的root进行登录(mysql -u root -p)
开启event操作命令如下:
其他修改命令如下:
mysql event_scheduler
开启event_scheduler sql指令:
SET GLOBAL event_scheduler = ON;
SET @@global.event_scheduler = ON;
SET GLOBAL event_scheduler = 1;
SET @@global.event_scheduler = 1;
相反,关闭event_scheduler指令:
SET GLOBAL event_scheduler = OFF;
SET @@global.event_scheduler = OFF;
SET GLOBAL event_scheduler = 0;
SET @@global.event_scheduler = 0;
通过执行如下的语句查询事件执行情况(同orcacle中的select * from user_jobs):
SELECT * FROM information_schema.EVENTS;
可以看到相应的库中的作业信息,其中LAST_EXECUTED字段会反映出相应的作业最近一次的执行时间
创建存储过程和创建事件的方法如下:
创建存储过程SQL如下:
DROP PROCEDURE IF EXISTS `PROC_TEST`;
CREATE DEFINER = `tfm`@`%` PROCEDURE `PROC_TEST`()
COMMENT '定时统计结果\r\n'
BEGIN
DECLARE linkCount, _ERR int default 0;
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION,SQLWARNING,NOT FOUND set _ERR=1;
/*查询数量 注释类型1*/
select count(0) into linkCount from t_tfm_link_dir;
-- 写入结果表 注释类型2
#保存结果 注释类型3
insert into t_tfm_city_trafficindex(cityName,time,updatetime,type,grade) values('漳州',date_format(now(),'%d %h:%i'),now(),linkCount,'abcde');
if _ERR=1 THEN
insert into t_tfm_runlog(runtime,funname,errorcode,errordesc) VALUE(now(),'PROC_TEST',_ERR,_ERR);
END IF;
END;
创建事件SQL如下:
ALTER EVENT `event_test`
ON SCHEDULE EVERY 2 MINUTE STARTS '2016-09-12 16:42:09';
//每两分钟执行一次事件