明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

MySQL事件的使用詳細(xì)說明

[摘要]在系統(tǒng)管理或者數(shù)據(jù)庫管理中,經(jīng)常要周期性的執(zhí)行某一個(gè)命令或者SQL語句。這個(gè)時(shí)候就會(huì)用到mysql事件,使用這個(gè)功能必須保證是mysql的版本是5.1以上。1.首先要查看事件是否開啟了,SHOW V...
在系統(tǒng)管理或者數(shù)據(jù)庫管理中,經(jīng)常要周期性的執(zhí)行某一個(gè)命令或者SQL語句。這個(gè)時(shí)候就會(huì)用到mysql事件,使用這個(gè)功能必須保證是mysql的版本是5.1以上。

1.首先要查看事件是否開啟了,

SHOW VARIABLES LIKE 'event_scheduler';
SELECT @@event_scheduler;
SHOW PROCESSLIST;

之星sql

1.png

2.我們先開啟mysql事件,1,通過動(dòng)態(tài)參數(shù)修改:SET GLOBAL event_scheduler = ON;注意:還是要在my.cnf中添加event_scheduler=ON。因?yàn)槿绻麤]有添加的話,mysql重啟事件又會(huì)回到原來的狀態(tài)了。

2.png

3.下面我創(chuàng)建一個(gè)測(cè)試的數(shù)據(jù)庫表,

CREATE TABLE `test` (  
`ID` int(11) NOT NULL AUTO_INCREMENT,  
`lpnam` datetime DEFAULT NULL,  
PRIMARY KEY (`id`))
ENGINE=InnoDB 
AUTO_INCREMENT=106 
DEFAULT CHARSET=utf8

創(chuàng)建一個(gè)數(shù)據(jù)庫表做為測(cè)試

3.png

4.下面我們創(chuàng)建mysql事件,

CREATE EVENT IF NOT EXISTS test123 ON SCHEDULE EVERY 3 SECOND
ON COMPLETION PRESERVE
DO INSERT INTO ceshisy(lpname) VALUES(NOW());

執(zhí)行sql創(chuàng)建mysql事件

4.png

5.創(chuàng)建完成以后我們看一次是不是執(zhí)行了,查看一下數(shù)據(jù)庫表

5.png

6.總結(jié)一下語法:

DEFINER: 定義事件執(zhí)行的時(shí)候檢查權(quán)限的用戶。
ON SCHEDULE schedule: 定義執(zhí)行的時(shí)間和時(shí)間間隔。
ON COMPLETION [NOT] PRESERVE: 定義事件是一次執(zhí)行還是永久執(zhí)行,默認(rèn)為一次執(zhí)行,即NOT PRESERVE。
ENABLE   DISABLE   DISABLE ON SLAVE: 定義事件創(chuàng)建以后是開啟還是關(guān)閉,以及在從上關(guān)閉。如果是從服務(wù)器自動(dòng)同步主上的創(chuàng)建事件的語句的話,會(huì)自動(dòng)加上DISABLE ON SLAVE。
COMMENT 'comment': 定義事件的注釋。

以上就是MySQL事件的使用詳解的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。