mysql的定时任务
来源:互联网 发布:淘宝卖的最奇葩的东西 编辑:程序博客网 时间:2024/05/01 07:05
定时任务
查看event是否开启: show variables like '%sche%';
将事件计划开启: set global event_scheduler=1;
3、创建存储过程clean_data,这里假定数据库名称是jcj,采用游标一次取得25个数据进行清理操作
4、 创建event jcj_cd_event
每隔1分钟将执行存储过程clean_data,将当前时间以及最新处理的id更新到tbl_clean表中,同时清理了tbl_name_log表中数据
delimiter //
CREATE TRIGGER trigger_htmlcache BEFORE INSERT ON t_model
FOR EACH ROW BEGIN
if CURDATE()<NEW.time then
INSERT INTO t_htmlcache(id,url) value(NEW.id,NEW.url);
end if;
END;
//
查看event是否开启: show variables like '%sche%';
将事件计划开启: set global event_scheduler=1;
关闭事件任务:
alter event jcj_cd_event ON COMPLETION PRESERVE DISABLE;
开户事件任务:
alter event jcj_cd_event ON COMPLETION PRESERVE ENABLE;
简单实例.
需求目标:将表tbl_name_log表中重复的名字只保留一个
2、创建记录处理过程表
CREATE TABLE `tbl_clean` ( `last_id` bigint(20) unsigned zerofill NOT NULL, `modify_time` datetime NOT NULL) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;/*Data for the table `tbl_clean` */insert into `tbl_clean`(`last_id`,`modify_time`) values (00000000000000000001,'2013-05-12 08:52:56');
3、创建存储过程clean_data,这里假定数据库名称是jcj,采用游标一次取得25个数据进行清理操作
DELIMITER $$DROP PROCEDURE IF EXISTS `jcj`.`clean_data`$$CREATE PROCEDURE `jcj`.`clean_data`() /*LANGUAGE SQL | [NOT] DETERMINISTIC | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA } | SQL SECURITY { DEFINER | INVOKER } | COMMENT 'string'*/ BEGINdeclare p_num int;declare stopFlag int;DECLARE t_name varchar(40); DECLARE data_cursor CURSOR FOR select id,name FROM tbl_name_log where id>(select last_id from tbl_clean) limit 0,25;DECLARE CONTINUE HANDLER FOR NOT FOUND set stopFlag=1; OPEN data_cursor;REPEAT FETCH data_cursor INTO p_num,t_name; beginupdate tbl_clean set last_id=p_num,modify_time=now();delete from tbl_name_log where name=t_name and id<>p_num;end; UNTIL stopFlag = 1END REPEAT; CLOSE data_cursor; END$$DELIMITER ;
4、 创建event jcj_cd_event
CREATE EVENT if not exists jcj_cd_event on schedule every 1 MINUTE on completion preserve do call clean_data();
每隔1分钟将执行存储过程clean_data,将当前时间以及最新处理的id更新到tbl_clean表中,同时清理了tbl_name_log表中数据
btw:提供一个创建触发器的例子
5、触发器
delimiter //CREATE TRIGGER trigger_htmlcache BEFORE INSERT ON t_model FOR EACH ROW BEGIN if CURDATE()<NEW.time then INSERT INTO t_htmlcache(id,url) value(NEW.id,NEW.url); end if;END;//
delimiter //
CREATE TRIGGER trigger_htmlcache BEFORE INSERT ON t_model
FOR EACH ROW BEGIN
if CURDATE()<NEW.time then
INSERT INTO t_htmlcache(id,url) value(NEW.id,NEW.url);
end if;
END;
//
- mysql的定时任务
- mysql数据库的定时任务
- Mysql定时任务的开启
- mysql 的定时sql任务
- MySQL定时任务的开启
- mysql的定时任务学习
- mysql定时任务的实现
- mysql的定时任务和触发器相关
- mysql的定时任务和触发器相关
- 如何写mysql的定时任务
- MySQL定时任务是如何实现的
- mysql 中定时任务event的创建
- 禁用mysql每天的定时更新任务
- mysql的定时计划任务如何关闭
- Mysql数据库定时任务
- mysql创建定时任务
- MySQL定时任务
- mysql 定时任务编写
- 安卓中文SDK连载(1)
- easyui datagrid 改变行值
- SAP SOAP RFC SXPG_COMMAND_EXECUTE Remote Command Execution
- 疫苗:Java HashMap的死循环
- 开源免费天气预报接口API以及全国所有地区代码!!(国家气象局提供)
- mysql的定时任务
- c# 托管堆,堆栈【图文非常详细】
- 红外线报警器,20多辆车的防盗系统“崩溃”
- sdk 7 离线安装包
- SAP SOAP RFC SXPG_CALL_SYSTEM Remote Command Execution
- Java可变参数讨论与重写,重载的相关讨论
- 【移动GIS】自定义在线地图
- 更改服务器的排序规则SQL SERVER 2005
- IOS开发(69)之捕获旋转的手势