`

mysql调度相关(转)

阅读更多

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}
1) 首先来看一个简单的例子来演示每秒插入一条记录到数据表

USE test;
CREATE TABLE aaa (timeline TIMESTAMP);
CREATE EVENT e_test_insert
ON SCHEDULE EVERY 1 SECOND 
DO INSERT INTO test.aaa VALUES (CURRENT_TIMESTAMP);
等待3秒钟后,再执行查询看看:

mysql> SELECT * FROM aaa;
+---------------------+ 
| timeline            | 
+---------------------+ 
| 2007-07-18 20:44:26 | 
| 2007-07-18 20:44:27 | 
| 2007-07-18 20:44:28 | 
+---------------------+
2) 5天后清空test表:

CREATE EVENT e_test
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 5 DAY
DO TRUNCATE TABLE test.aaa;
3) 200772012点整清空test表:

CREATE EVENT e_test
ON SCHEDULE AT TIMESTAMP '2007-07-20 12:00:00'
DO TRUNCATE TABLE test.aaa;
4) 每天定时清空test表:

CREATE EVENT e_test
ON SCHEDULE EVERY 1 DAY
DO TRUNCATE TABLE test.aaa;
5) 5天后开启每天定时清空test表:

CREATE EVENT e_test
ON SCHEDULE EVERY 1 DAY
STARTS CURRENT_TIMESTAMP + INTERVAL 5 DAY
DO TRUNCATE TABLE test.aaa;
6) 每天定时清空test表,5天后停止执行:

CREATE EVENT e_test
ON SCHEDULE EVERY 1 DAY
ENDS CURRENT_TIMESTAMP + INTERVAL 5 DAY
DO TRUNCATE TABLE test.aaa;
7) 5天后开启每天定时清空test表,一个月后停止执行:

CREATE EVENT e_test
ON SCHEDULE EVERY 1 DAY
STARTS CURRENT_TIMESTAMP + INTERVAL 5 DAY
ENDS CURRENT_TIMESTAMP + INTERVAL 1 MONTH
DO TRUNCATE TABLE test.aaa;
[ON COMPLETION [NOT] PRESERVE]可以设置这个事件是执行一次还是持久执行,默认为NOT PRESERVE
8) 每天定时清空test(只执行一次,任务完成后就终止该事件)

CREATE EVENT e_test
ON SCHEDULE EVERY 1 DAY
ON COMPLETION NOT PRESERVE
DO TRUNCATE TABLE test.aaa;
[ENABLE | DISABLE]可是设置该事件创建后状态是否开启或关闭,默认为ENABLE
[COMMENT ‘comment’]可以给该事件加上注释。

三、修改事件(ALTER EVENT)
ALTER EVENT event_name
  [ON SCHEDULE schedule]
  [RENAME TO new_event_name]
  [ON COMPLETION [NOT] PRESERVE]
  [COMMENT 'comment']
  [ENABLE | DISABLE]
  [DO sql_statement]
1) 临时关闭事件

ALTER EVENT e_test DISABLE;
2) 开启事件

ALTER EVENT e_test ENABLE;
3) 将每天清空test表改为5天清空一次:

ALTER EVENT e_test
ON SCHEDULE EVERY 5 DAY;
四、删除事件(DROP EVENT)
语法很简单,如下所示:

DROP EVENT [IF EXISTS] event_name
例如删除前面创建的e_test事件

DROP EVENT e_test;
当然前提是这个事件存在,否则会产生ERROR 1513 (HY000): Unknown event错误,因此最好加上IF EXISTS

DROP EVENT IF EXISTS e_test;

<!--EndFragment-->
分享到:
评论

相关推荐

    Mysql转oracle工具

    MySQL的事件调度器需要转换为Oracle的调度器或者触发器。 8. **数据迁移**: 转换不仅仅是结构的转换,还包括数据的迁移。这可能涉及到大量数据的导入导出,以及数据类型的转换。 9. **性能优化**: Oracle通常...

    MySQL后端作业调度器Dalga.zip

    Dalga 是使用 Go 编写的 MySQL 后端作业调度程序,带有一个 HTTP 接口。Dalga 是个作业调度器:可以安排定期或者一次性作业在一个 MySQL 表中存储作业包括一个 HTTP 接口,可以安排或者取消作业 在作业执行期间可以...

    使用kettle转换oracle与 mysql的表数据

    在这个场景中,我们将探讨如何使用Kettle来实现Oracle数据库与MySQL数据库之间的数据转换。 首先,我们要理解Kettle的基本工作流程。Kettle以图形化的方式设计数据流,用户可以通过创建“转换”和“作业”来定义...

    mysql读写分离调度器

    MySQL读写分离调度器是一种数据库架构策略,用于优化高并发情况下的数据库性能。在大型Web应用中,数据库经常成为性能瓶颈,因为所有的读写操作都集中在这里。读写分离通过将读操作和写操作分配到不同的数据库服务器...

    最好的MSSQL转MySQL数据库迁移工具_MSSQL-to-MySQL

    而`m2sagent.exe`可能是辅助进程,可能涉及到任务调度或后台处理,具体功能需要参考帮助文档来了解。 在进行数据库迁移时,有几个关键点需要注意: 1. 数据一致性:确保迁移过程中数据的完整性和一致性至关重要。...

    dolphinscheduler安装包和mysql的jdbc连接jar包

    在这里,`mysql-connector-java-5.1.47-bin.jar`可以被添加到DolphinScheduler的类路径中,以便系统能够连接到MySQL数据库,存储和检索任务调度的相关信息。 在集成DolphinScheduler和MySQL的过程中,你需要完成...

    JavaEE +SSH框架+mysql数据库 银行业务调度管理系统项目地址.docx

    总结来说,"JavaEE + SSH框架 + mysql数据库 银行业务调度管理系统"是一个综合性的项目,涵盖了Web开发中的关键技术和业务领域的具体应用。对于想要提升技能或者完成毕业设计的学生,这是一个绝佳的学习资源,不仅...

    mysql数据库转为sql数据库的工具

    从标签“mysql转sql”我们可以推断,这个工具专注于处理MySQL到SQL Server的数据迁移任务,可能是通过解析MySQL的数据库备份文件或者直接连接到MySQL服务器来获取数据。 压缩包内的文件提供了关于这个工具的更多...

    解决mysql failed to open table mysql.event

    - 检查`my.cnf`(或`my.ini`,取决于你的系统)配置文件,确保`event_scheduler`参数设置为`ON`,允许MySQL事件调度器运行。 - 修改配置后,需要重启MySQL服务使更改生效。 5. **数据目录**: - 确保MySQL的数据...

    ACC转MYSQL

    "ACC转MYSQL"是指将Access(ACC)数据库转换为MySQL数据库的过程。Access是由微软开发的关系型数据库管理系统,而MySQL则是一款开源、免费的SQL数据库,广泛应用于Web应用程序。下面,我们将详细探讨这个过程中的...

    mysqlbackup.rar_delphi mysql_mysql 备份_mysqlbackup_备份 delphi

    这些标签说明了我们正在处理一个与Delphi相关的MySQL备份解决方案,可能包含特定的API调用、函数或者类库,用于连接MySQL服务器并执行备份操作。 在“压缩包子文件的文件名称列表”中,只有一项:“mysql备份”。这...

    校车调度-校车调度系统-校车调度系统源码-校车调度管理系统-基于springboot的校车调度系统-校车调度管理系统java代码

    校车调度-校车调度系统-校车调度系统源码-校车调度管理系统-校车调度管理系统java代码-校车调度系统设计与实现-基于springboot的校车调度系统-基于Web的校车调度系统设计与实现-校车调度网站-校车调度网站代码-校车...

    Oracle与MySQL在数据库触发器和事件调度器上的比较分析

    Oracle和MySQL作为两个流行的数据库管理系统,它们在触发器和事件调度器的实现和功能上存在一些差异。 Oracle和MySQL在触发器和事件调度器上提供了强大的自动化功能,但它们在实现和功能上存在一些差异。开发者需要...

    MySQL_5.1_zh.rar_MYSQL_MySQL_5.1_zh_mysql 中文

    6. **事件调度器**:MySQL 5.1 引入了事件调度器,允许用户定时执行特定任务,比如定期备份或清理过期数据。 7. **性能监视和优化**:MySQL 5.1 提供了更强大的性能分析工具,如 Performance Schema,用于监控...

    校车调度-校车调度系统-校车调度系统源码-校车调度管理系统-基于Web的校车调度系统设计与实现-校车调度系统设计与实现-java

    校车调度-校车调度系统-校车调度系统源码-校车调度管理系统-校车调度管理系统java代码-校车调度系统设计与实现-基于springboot的校车调度系统-基于Web的校车调度系统设计与实现-校车调度网站-校车调度网站代码-校车...

Global site tag (gtag.js) - Google Analytics