任务MySQL定时自动执行任务指南(mysql定时执行)

MySQL 定时自动执行任务指南

任务自动执行能够大大提高工作效率。MySQL实现定时自动执行任务旨在满足一些定期自动执行要求,比如每天执行某一查询、定时清理某些表等。考虑到兼容性问题,MySQL实现定时任务最佳实践指南涉及配置文件、SQL脚本以及按需用户自定义许可文件,但是这里仅着重介绍MySQL的实现方案。

MySQL的实现的定时任务主要有两种方法:

第一种方法是利用MySQL提供的Event定时器,可以在MySQL配置文件中定义需要执行的SQL脚本,通过Event定时器设定在某一时刻执行某一定期任务,其关键代码如下:

CREATE EVENT IF NOT EXISTS `myEvent`

ON SCHEDULE

EVERY 3 HOUR

STARTS ‘2018-02-17 23:00:00’

DO

BEGIN

// 请复制要执行的SQL脚本语句到这

END

第二种方法是利用MySQL的授权机制,通过用户自定义的许可文件来实现定时任务,可以让定期任务在设定的时刻执行,支持的SQL语句主要有select、update、delete、insert等,其关键代码如下:

CREATE EVENT IF NOT EXISTS `myEvent`

ON SCHEDULE

EVERY 3 HOUR

STARTS ‘2018-02-17 23:00:00’

DO

BEGIN

SET sql_log_bin=ON;

CREATE USER demo@’localhost’ IDENTIFIED BY ‘123456’;

GRANT EXECUTE ON myEvent.* TO demo@’localhost’;

END

通过以上介绍,我们可以很清楚地知道MySQL实现定时自动执行任务的方法,这只是一个指南,并不能完全避免出现大量问题,具体情况应根据具体业务进行调整。


数据运维技术 » 任务MySQL定时自动执行任务指南(mysql定时执行)