mysql 建立定時器

2021-06-25 23:40:41 字數 1159 閱讀 2824

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 建立定時器

檢視定時器狀態 off 關閉,on 開啟 show variables like event sche 開啟定時器 set global event scheduler 1 以上的改法在資料庫重啟後將會恢復為原來狀態,要想資料庫重啟後也可以讓event scheduler開啟,則需要在配置檔案my....

mysql 建立job mysql 建立定時器

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

mysql建立定時器(event)

mysql建立定時器 event 步驟。1 select version 檢視當前使用的mysql版本。2 showvariables like sche 檢視是否開啟event與開啟event。event功能預設是關閉的,可以使用上面的語句來看event的狀態,如果是off或者0,表示是關閉的。3...