MySQL 開啟事件 使用定時器呼叫儲存過程

2021-09-12 11:03:19 字數 1159 閱讀 9899

mysql定時器是系統給提供了event,而oracle裡面的定時器是系統給提供的job。廢話少說,下面建立表:

create table mytable (

id int auto_increment not null,

name varchar(100) not null default '',

introduce text not null,

createtime timestamp not null,

constraint pk_mytable primary key(id)

)建立儲存過程,這裡的儲存過程主要提供給mysql的定時器event來呼叫去執行:

create procedure mypro()

begin

insert into mytable (name,introduce,createtime) values ('1111','inner mongolia',now());

end;

這裡只是簡單的寫了一下,只是為了說明例子。

緊接著建立mysql的定時器event:

create event if not exists eventjob 

on schedule every 1 second 

on completion preserve

do call mypro();

這裡設定為每一秒執行一次

至此所有的準備工作已經寫完了,做完這些,mysql要想利用定時器必須的做準備工作,就是把mysql的定時器給開啟了:

set global event_scheduler = 1;  -- 啟動定時器

set global event_scheduler = 0;  -- 停止定時器

緊接著還要開啟事件:

alter event eventjob on  completion preserve enable;   -- 開啟事件

alter event eventjob on  completion preserve disable;  -- 關閉事件

show variables like '%sche%'; -- 檢視定時器狀態

至此,你去資料庫裡面的表mytable裡面看下,系統會每隔一秒去插入一條資料,嘻嘻,任務完成了。

select * from mytable

MySQL 開啟事件 使用定時器呼叫儲存過程

mysql定時器是系統給提供了event,而oracle裡面的定時器是系統給提供的job。廢話少說,下面建立表 create table mytable id int auto increment not null,name varchar 100 not null default introduc...

MySQL開啟事件

為了節省除錯事件相關問題的時間,請記住,必須開啟全域性事件處理程式來處理事件。檢視全域性事件是否開啟 show variables where variable name event scheduler 開啟事件功能 set global event scheduler 1 drop event i...

MySQL 事件 定時器

mysql 事件 定時器 多個sql的集合,定時執行任務.檢視事件變數,查詢不到說明不支援 show variables like event scheduler 開啟事件 也可以在mysql.ini檔案中加入event scheduler on set global event scheduler...