mysql 存储过程 延时_mysql怎么让一个存储过程定时执行(转载)
时间: 2023-07-01 07:29:03 浏览: 86
linux环境下mysql存储过程开启定时任务,bing log.rar
要让 MySQL 存储过程定时执行,可以考虑使用 MySQL 的事件调度器。下面是一个简单的例子:
1.首先,需要确保事件调度器已经启用。在 MySQL 中,事件调度器默认是禁用的,可以通过修改 MySQL 配置文件(my.cnf)来启用它,或者在 MySQL 命令行中执行以下语句来动态启用它:
```
SET GLOBAL event_scheduler = ON;
```
2.创建一个存储过程,例如:
```
CREATE PROCEDURE my_proc()
BEGIN
-- 这里是存储过程的具体逻辑
-- ...
END;
```
3.创建一个事件,指定存储过程的执行时间和执行频率。例如:
```
CREATE EVENT my_event
ON SCHEDULE
EVERY 1 DAY
STARTS '2022-01-01 00:00:00'
DO
CALL my_proc();
```
上面的事件将在每天的 00:00:00 执行一次 my_proc() 存储过程。可以根据需要调整事件的执行时间和执行频率。
注意:在 MySQL 中,事件调度器的执行是基于服务器时间的,因此需要确保服务器时间准确无误。另外,如果 MySQL 服务重启,需要重新启用事件调度器,或者在 MySQL 启动参数中设置事件调度器启动。
希望这个简单的例子能够帮助你实现 MySQL 存储过程的定时执行。
阅读全文