分享

mysql设置定时任务

 Breeze的图书馆 2018-04-10
#查看当前是否已开启事件调度器
show variables like 'event_scheduler';

#要想保证能够执行event事件,就必须保证定时器是开启状态,默认为关闭状态
set GLOBAL event_scheduler = ON;

#创建定时任务
drop event if exists jc_content_ext;
delimiter ;;

CREATE EVENT `jc_content_ext` ON SCHEDULE EVERY 1 MINUTE STARTS '2017-07-20 16:00:43' ON COMPLETION NOT PRESERVE ENABLE DO
BEGIN
	UPDATE jc_content_ext
SET release_date = DATE_ADD(release_date, INTERVAL 1 YEAR)
WHERE
	content_id IN (
		SELECT
			content_id
		FROM
			jc_content
		WHERE
			channel_id = 10
		AND type_id = 1
		AND model_id = 1
		AND sort_date < DATE_SUB(
			DATE_ADD(now(), INTERVAL 1 WEEK),
			INTERVAL 1 YEAR
		)
	) ; UPDATE jc_content
SET sort_date = DATE_ADD(sort_date, INTERVAL 1 YEAR)
WHERE
	channel_id = 10
AND type_id = 1
AND model_id = 1
AND sort_date < DATE_SUB(
	DATE_ADD(now(), INTERVAL 1 WEEK),
	INTERVAL 1 YEAR
) ; COMMIT ;
END;;
delimiter;

#查看任务
show events;

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多