MYSQL 定时任务

设置定时任务时,首先将event_scheduler设置为1,以开启事件计划功能。

1.开启功能
----------------------------------------
执行命令
set global event_scheduler=1;
select @@event_scheduler;
----------------------------------------
OR
---------------------------------------------------------------
修改文件
my.ini
# Set the event scheduler. 0 for OFF, 1 for ON.
event_scheduler=1
启动服务
---------------------------------------------------------------

2.创建计划
---------------------------------------------------------
CREATE DEFINER=`root`@`%`
EVENT `NewEvent`
ON SCHEDULE EVERY 1 DAY STARTS ‘2015-01-06 17:05:00‘
ON COMPLETION NOT PRESERVE
ENABLE
DO
BEGIN
call Auto_Create_Partition(‘test‘,‘job‘);
call Auto_Create_Partition(‘test‘,‘page‘);
END;
----------------------------------------------------------

时间: 2024-10-05 12:34:38

MYSQL 定时任务的相关文章

MySQL定时任务event,储存过程(定时删除指定时间前90天指定表的数据)

MySQL定时任务event,储存过程(定时删除指定时间前90天指定表的数据) 分类: MySql5.x2014-06-23 15:16 1266人阅读 评论(0) 收藏 举报 mysql数据库 [sql] view plaincopy <span style="font-family: 'Microsoft YaHei'; font-size: 14px;">MySQL定时任务event</span> 由于一些业务需求,我们可能需要定时清除数据库一些废弃的数据

mysql 定时任务和存储过程

mysql 定时任务和存储过程 最近在做日志系统,中间用到了 mysql, 其中有一个要求: 把数据库中 7天之后的日志清除了.看到 mysql 也支持 定时任务.于是就用 mysql 来做了.下面就是这次使用代码. 存储过程 use webapm; --创建存储过程 DELIMITER $$ CREATE PROCEDURE `p_del_slow`(IN `date_inter` INT) BEGIN DELETE FROM slow_duration WHERE (TO_DAYS(NOW(

Mysql定时任务详情

Mysql定时任务 1.查看是否开启事件调度器: SHOW VARIABLES LIKE 'event_scheduler'; #没有开启则无法启用定时器(0代表:off,1代表:on)#若未开启则执行SET GLOBAL event_scheduler = ON; #开启定时器 2.创建EVENT事件语法: #例.每隔10秒执行一次 CREATE EVENT 定时器名称 #event事件名 ON SCHEDULE EVERY 10 SECODE #每隔10秒调度一次(事件可以自行设置[例:MO

mysql定时任务简单例子

? 1 2 3 4 5 6 7 8 9     如果要每30秒执行以下语句: [sql] update userinfo set endtime = now() WHERE id = '110';  可以给mysql建个定时任务,具体方法如下: [sql] delimiter //   /* 设定语句终结符为 //,因存储过程语句用;结束 */ 一.查看event是否开启 ? 1 2 3 4 5 [sql] show variables like '%sche%';  开启event_sched

mysql 定时任务的使用

mysql5.1.6增加了一个事件调度器(Event Scheduler),可以做定时任务(定时删除记录,定时数据统计),取代之前系统的计划任务.mysql事件调度器可以精确到每秒执行一个任务. 事件调度器与触发器的区别:事件调度器是基于特定时间周期来触发执行某些任务,触发器是基于某个表产生的事件来触发. 一.查看是否开启 > show variables like 'event_scheduler'; 二.开启事件调度器 set global event_scheduler = on; 这里的

mysql定时任务配置

做项目有时会遇到一些状态需要每天定时去维护,我的方案是写成sql语句或者存储过程,再配置mysql调度器让数据库每天去执行.废话不多说,直接进去正文: 假如当前时间是2016-12-28 12:05:00,你执行下面语句,等到12:10时,系统自动执行调度任务去往aaa表里insert一条记录. Select @@event_scheduler;#查看事件调度程序,如果是OFF,则执行下条语句SET GLOBAL event_scheduler = ON;#设置时间调度程序为ON#每天的2016

mysql定时任务用到存储过程和定时任务

需求: 需要将t_app_message中的消息(将要被发送的消息)给每一个学生发送一遍,并且在发送完成后,将消息置为已发送状态已发送状态. 一言不合上代码 1 /*删除存储过程*/ 2 drop procedure if exists proc_sendAllMsg; 3 /*创建存储过程*/ 4 CREATE PROCEDURE proc_sendAllMsg() 5 BEGIN 6 /*先插入*/ 7 INSERT t_base_message (sid,mid) 8 SELECT a.i

mysql定时任务event——清理过期数据 (转)

1.查询是否开启事件调度 SHOW VARIABLES LIKE 'event_scheduler'; 2.开启事件调度 临时: SET GLOBAL event_scheduler = 1; 永久: vim /etc/my.cnf event_scheduler=ON [mysqld]event_scheduler=ON //这一行加入mysqld标签下 3.创建p_del_count存储过程. 接收传入参数30并执行删除数据操作,删除大于30天的数据. drop procedure if e

mysql定时任务按天建表并跨库同步数据

创建定时任务完成:创建ASR识别记录表,每天自动从小云AI对话详情表同步数据.*/DROP PROCEDURE IF EXISTS `create_o_asr_record_call`;DELIMITER ;;CREATE PROCEDURE `create_o_asr_record_call`(IN `dayInt` bigint,out result int) COMMENT 'ASR识别结果表--按日--建表'BEGIN set @sql_tmp3 = CONCAT('create tab