MySQL5.1.x 版本中引入了一项新特性 EVENT ,顾名思义就是事件、定时任务机制,在指定的时间单元内执行特定的任务,因此今后一些对数据定时性操作不再依赖外部程序,而直接使用数据库本身提供的功能。此功能是对 Oracle 的 Job/Schedule 的模仿, 5.1.X 版本以上才支持。
Event Scheduler作为一种数据库对象,其增删改的DDL语句与其他对象非常相似,无非CREATE、ALTER、DROP等,创建的基本语法是: CREATE
EVENT (1)
例子 1)创建一张表
CREATE
TABLE `aaa` ( 2) 创建事件 每秒钟新增一条数据 CREATE EVENT
e_test_insert 这里的时间点可以根据需要自己设定
3)开启事件 ALTER EVENT e_test_insert ENABLE;
4)关闭事件 ALTER EVENT e_test_insert DISAVLE;
5)删除事件 DROP EVENT e_test_insert ; 这里建议最好在加上 IF EXISTS DROP EVENT IF EXISTS e_test_insert ;
应用
因at和every不能共用的。
首先查看event是否开启 show variables like '%sche%'; 将事件计划开户 set global event_scheduler =1;
每个月1号凌晨3点的事件 create event e5 ON SCHEDULE EVERY 1 MONTH STARTS DATE_ADD(DATE_ADD(DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY), INTERVAL 1 MONTH),INTERVAL 3 HOUR) ON COMPLETION PRESERVE ENABLE DO INSERT INTO test.aaa VALUES (CURRENT_TIMESTAMP);
|
mysql计划任务 转
最新推荐文章于 2024-06-24 02:49:12 发布