文档首页/ 云数据库 RDS_云数据库 RDS for MySQL/ 最佳实践/ RDS for MySQL设置循环执行事件
更新时间:2025-05-30 GMT+08:00
分享

RDS for MySQL设置循环执行事件

当您需要在RDS for MySQL中执行定时任务或周期性任务,例如定时同步数据、定期清理过期数据、或周期性插入数据等任务,您可以开启事件定时器,结合数据管理服务DAS的循环执行事件功能,根据预定计划自动执行数据库中定义的事件。本文介绍如何使用DAS服务为RDS for MySQL设置循环执行事件。

约束限制

  • RDS for MySQL内核5.6.43.2、5.7.25.2和8.0.17.4及其以上版本可以开启事件定时器。若您的数据库版本不在该范围内但想使用该功能,请升级内核小版本
  • 只读实例不支持开启事件定时器。

步骤1:开启事件定时器

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域。
  3. 单击页面左上角的,选择“数据库 > 云数据库 RDS”,进入RDS信息页面。
  4. “实例管理”页面,单击主实例名称。
  5. 在“概览”页面,在“事件定时器”处,单击“开启”。

步骤2:设置循环执行事件

  1. “实例管理”页面,选择目标实例,单击操作列的“登录”,进入数据管理服务实例登录界面。

    图1 登录实例

  2. 输入root用户名和对应的密码,单击“登录”

    图2 登录界面

  3. 选择“SQL操作 > SQL查询”。
  4. 在SQL窗口,创建数据库db_test

    create database db_test;
    图3 创建库

  5. db_test库下,创建表t_test

    create table t_test(id int(4), name char(20), age int(4));
    图4 创建表

  6. 在首页,单击数据库名称,进入对象列表。

    图5 首页

  7. 在对象列表,选择“事件”,单击“新建事件”

    图6 对象列表

  8. 填写事件信息后,单击“立即创建”

    图7 新建事件
    表1 事件说明

    参数

    描述

    事件名称

    自定义事件名称。

    到期后删除

    • 不勾选,事件任务一直保留。
    • 勾选后,事件任务到期后删除。
      • 对于固定时间执行的事件,执行一次即删除。
      • 对于循环时间执行的事件,将在设置的执行结束时间点删除。

    状态

    执行事件时,选择“开启”。

    备注

    事件任务的备注。

    执行时间定义

    • 固定时间

      在指定的时间执行一次事件任务。

    • 循环时间

      在开始和结束时间范围内,每隔一个循环周期执行一次事件任务。

      例如:在09:50~10:00之间,每隔1分钟执行一次事件。

    事件定义语句

    事件定时触发时执行的操作语句。

    例如:在表t_test中插入一条数据。

    begin
    insert into t_test(id, name, age) values(1, 'zhangsan', 30);
    end

  9. 在弹出框,单击“执行脚本”,将在设置的时间执行事件任务。
  10. 在对象列表,选择“表”,单击“打开表”。

    图8 打开表

  11. 查看循环事件执行结果。

    图9 查看执行结果

相关文档