mysql 定時器概念 MySQL 定時器

2021-10-13 00:08:49 字數 1156 閱讀 2161

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

mysql定時器 建立測試表 create table t v varchar 100 not null engine innodb default charset utf8 建立定時器 呼叫的儲存過程 delimiter drop procedure if exists e test create...

mysql 定時器概念 Mysql 定時器

定時任務 週期任務 檢視命令 show variables like event sche 顯示的event scheduler為off時用以下命令開啟 set global event scheduler 1 注意 以上的改法在資料庫重啟後將會恢復為原來狀態,要想資料庫重啟後也可以讓event s...

mysql定時器 教程 Mysql 定時器

定時任務 週期任務 檢視命令 show variables like event sche 顯示的event scheduler為off時用以下命令開啟 set global event scheduler 1 注意 以上的改法在資料庫重啟後將會恢復為原來狀態,要想資料庫重啟後也可以讓event s...