MySQL 定时任务可通过 EVENT 语句创建,用于在指定时间间隔自动执行任务。创建语法为:CREATE EVENT event_name ON SCHEDULE [AT start_time | EVERY interval_value] DO [任务] END。可以使用 SHOW EVENTS 查询、ALTER EVENT 修改、DROP EVENT 删除定时任务。

如何使用 MySQL 创建定时任务
MySQL 是一种功能强大的数据库管理系统,它允许您在特定时间间隔自动执行任务。要创建 MySQL 定时任务,您可以使用 EVENT 语句。
创建 EVENT 语句
CREATE EVENT event_name ON SCHEDULE AT start_time EVERY interval_value DO -- 要执行的任务 END;
参数说明:
- event_name:定时任务的名称。
-
ON SCHEDULE:指定任务调度的类型。可以是
AT(特定时间)或EVERY(特定时间间隔)。 -
AT start_time:如果
ON SCHEDULE为AT,则指定任务开始执行的时间。 -
EVERY interval_value:如果
ON SCHEDULE为EVERY,则指定任务执行的频率,例如EVERY 1 DAY(每天执行一次)。 - DO:指定要执行的任务。可以使用 SQL 语句或存储过程。
示例
发卡宝是一个专业的软件卡密等虚拟商品在线交易平台,拥有多种兑换方式,费率低,结算快,正规企业平台一直稳定运营,24小时不间断提供自动发卡服务。【模板说明】试用版自带一套模板(响应式)【环境支持】PHP环境 / 200M或以上空间大小 / 开启父路径 / 设置index.php为默认首页 / 目录写入权限需要开启【数据库】MySQL【安装步骤】将文件上传至空间目录,运行“http://域名/inst
以下示例创建一个每小时执行一次的定时任务,该任务将 user_activity 表中的记录从数据库中删除:
CREATE EVENT hourly_cleanup ON SCHEDULE EVERY 1 HOUR DO DELETE FROM user_activity WHERE timestamp < DATE_SUB(NOW(), INTERVAL 1 HOUR); END;
管理 EVENT
一旦创建了定时任务,您可以使用以下语句对其进行管理:
-
查询 EVENT:
SHOW EVENTS; -
启用/禁用 EVENT:
ALTER EVENT event_name [ENABLE | DISABLE]; -
删除 EVENT:
DROP EVENT event_name;
注意事项
- MySQL 8.0 及更高版本支持
EVENT。 - 确保 MySQL 服务器正在运行,并且定时任务已启用。
- 定时任务将在服务器时间而不是客户端时间执行。









