1. 檢視資料庫的event功能是否開啟,在mysql中event預設是關閉的,需要檢視並且要確保event處於開啟狀態
sql:show variables like '%sche%';
如果event_scheduler顯示為off或者0說明是關閉的,這時我們需要手動開啟定時器
sql:set global event_scheduler = 1;
這時再輸入
sql:show variables like '%sche%';
event_scheduler就應該是on或這是1了;即可以進行後面的操作。
2. 建立測試表
create table user1
id int(11) not null auto_increment primary key,
username varcher(15) not null
3. 建立event要呼叫的儲存過程user1_test
create procedure user1_test()
begin
#為方便檢視測試結果,推薦使用now()函式獲取當前時間進行插入
insert into user1(username ) values(now());
end4. 建立事件user1_event
create event user1_event
#這句話是設定時間多長時間執行一次(本設定是1s一次)
on schedule every 1 second
on completion preserve disable
#這個是指定要執行的**塊,在上面已經定義過了(即為3.建立的儲存過程)
do call user1_test();
5. 開啟事件user1_event,因為在建立之後是預設關閉的
#開啟alter event user1_event on completion preserve enable;
#關閉(關閉時間自行控制,推薦開啟約10s左右關閉,這樣可以很直觀的看到執行後的資料)
alter event user1_event on completion preserve disable;
6. 重頭戲開始了,檢視你的資料
1 2019-06-10 10:35:56
22019-06-10 10:35:57
32019-06-10 10:35:58
42019-06-10 10:35:59
52019-06-10 10:36:00
是不是多出了好多條資料,恭喜你成功了!
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...