mysql定时执行任务

1、查看事件调度器是否开启html

 

SHOW VARIABLES LIKE 'event_scheduler';


若是显示OFF,修改配置文件,让mysql服务启动的时候开启时间,只须要在my.ini配置文件的[mysqld]部分加上event_scheduler=ON 便可mysql



2、建立事件sql

 

一、语法服务器

 

CREATE EVENT [IF NOT EXISTS] event_name
ON SCHEDULE schedule
[ON COMPLETION [NOT] PRESERVE]
[ENABLE | DISABLE]
[COMMENT 'comment']
DO sql_statement;

schedule:
AT TIMESTAMP [+ INTERVAL INTERVAL]
| EVERY INTERVAL [STARTS TIMESTAMP] [ENDS TIMESTAMP]

INTERVAL:
quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |
            WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |
            DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}


二、参数说明spa

(1)、DEFINER: 定义事件执行的时候检查权限的用户。code

(2)、ON SCHEDULE schedule: 定义执行的时间和时间间隔。htm

(3)、ON COMPLETION [NOT] PRESERVE: 定义事件是一次执行仍是永久执行,默认为一次执行,即NOT PRESERVE。事件

(4)、ENABLE | DISABLE | DISABLE ON SLAVE: 定义事件建立之后是开启仍是关闭,以及在从上关闭。若是是从服务器自动同步主上的建立事件的语句的话,会自动加上DISABLE ON SLAVE。get

(5)、COMMENT 'comment': 定义事件的注释。同步

 

三、建立实例

 

建立以下表

CREATE TABLE aaa (timeline TIMESTAMP);

 

天天定时清空test表

 

CREATE EVENT e_test
ON SCHEDULE EVERY 1 DAY
DO TRUNCATE TABLE test.aaa;



参考资料:mysql定时执行任务   http://www.studyofnet.com/news/1185.html

相关文章
相关标签/搜索