mysql定時器的使用 小白版

2021-09-14 07:28:37 字數 1669 閱讀 7730

mysql定時器的使用(小白版)

前文:寫這篇部落格之前也看了好多介紹定時器的使用的,但是感覺對於真正的小白來說還是有點複雜,

對於希望通過cv**就能使用的懶人來說,稍顯麻煩,所以寫了此篇部落格

我已經給每一步都劃分了乙個小段,大家可以直接從這裡複製,分段執行。

#檢視資料庫的event功能是否開啟 因為在資料庫中的event預設是關閉的

show variables like '%sche%'

;#如果value顯示為off或者0說明是關閉的,這時我們需要手動開啟定時器

set global event_scheduler = 1;

#建立測試表

create table test

(id int(11) not null auto_increment primary key,

time datetime not null

) engine=innodb default charset=utf8;

#這是判斷我們要執行的文字是否存在,如果存在,就刪除這個文字(本質就是我們的定時器定時執行的**塊)

delimiter //

drop procedure if exists test_proce//

#建立event要呼叫的儲存過程test_proce (其實就是建立文字/**塊。)

create procedure test_proce(

) begin

#向test表裡面新增當前時間(**塊中的執行命令 我選擇的是乙個新增,因為容易看到效果)

insert into test(time) values(now());

end//

delimiter ;

#建立事件test_event(其作用:每隔一秒自動呼叫test_proce()儲存過程)

create event test_event

#這句話是設定時間多長時間執行一次

on schedule every 1 second

on completion preserve disable

#這個是指定要執行的**塊,在上面已經定義過了

do call test_proce();

#開啟事件test_event 因為建立的事件的啟用屬性預設是關閉的,我們將他的屬性設定為開啟

#就可以使用當前定時器 test_event 是要執行的事件名字

alter event test_event on completion preserve enable

;#關閉事件,其中 test_event 是要關閉的事件名字

alter event test_event on completion preserve disable;

#查詢test表中的資料

select * from test

;

整體流程簡介:

1.開啟mysql資料庫的event功能

2.建立乙個類似於要執行的**塊。

3.建立乙個事件,這個事件中有諸多屬性,可以設定執行時間間隔以及指定執行的**塊

(執行的**塊就是上一步建立的那個)

4.因為建立的事件的執行屬性預設是關閉的,所以我們要去修改這個事件的屬性為開啟。

以上**作者已經親測過

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

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